please watch the introductory video here:
https://www.loom.com/share/b1f80961eb75475d9f6db66a500edaae?sid=0a93e6d7-31ef-4bb1-9a18-bfd36ec46045
You can install the apk file from here:
or from this link:
Welcome to Happening, a modern cross-platform mobile application built with React Native and Expo. This app provides a seamless experience for discovering and booking events, with features like dark mode support, intuitive navigation, and a rich user interface.
- Discover and book events across various categories
- Real-time ticket availability and booking
- Dark mode support for comfortable viewing
- Location-based event discovery
- User profiles with booking history
- Category-based navigation
- Secure payment integration
- Interactive event details with artist information
- Cross-platform compatibility (iOS & Android)
- Responsive design that adapts to all screen sizes
- Smooth animations and transitions
- Efficient state management
- Optimized performance with lazy loading
- TypeScript for enhanced code reliability
- File-based routing with Expo Router
Before you begin, ensure you have the following installed:
- Node.js (v16.0.0 or newer)
- npm (v8.0.0 or newer)
- Git
Check your installations:
node --version
npm --version
git --versionInstall these CLI tools globally:
# Install Expo CLI
npm install -g expo-cli
# Install EAS CLI for building
npm install -g eas-cli- Clone the repository:
git clone https://github.com/usaidinfo/happening-app.git
cd happening-app- Install project dependencies:
npm install- Start the development server:
npx expo start- Press
a- Open in Android simulator - Press
i- Open in iOS simulator (macOS only) - Press
w- Open in web browser - Scan QR code with Expo Go app (requires Expo account)
- Login to your Expo account:
eas login- Configure your build:
eas build:configureFor testing (APK):
eas build --platform android --profile previewFor Play Store submission (AAB):
eas build --platform androideas build --platform iosNote: iOS builds require an Apple Developer account ($99/year)
Use these credentials to test the app:
- Username:
Admin(case sensitive) - Password:
Admin(case sensitive)
happening-app/
├── app/
│ ├── (tabs)/
│ │ ├── index.tsx
│ │ ├── booking.tsx
│ │ ├── search.tsx
│ │ ├── wishlist.tsx
│ │ └── account.tsx
│ ├── auth/ # Authentication routes
│ │ ├── login.tsx
│ │ └── register.tsx
│ ├── booking/ # Booking routes
│ │ └── [id].tsx
│ ├── event/
│ │ └── [id].tsx
│ └── _layout.tsx
├── components/
│ ├── event/
│ ├── home/
│ └── overlays/
├── assets/
│ ├── images/
│ │ ├── categories/
│ │ ├── Most popular/
│ │ ├── Offer for you/
│ │ ├── resume booking/
│ │ ├── Seasonal events/
│ │ ├── Show/
│ │ └── Logo/
│ └── fonts/
└── hooks/
- React Native
- Expo SDK
- TypeScript
- Native Base UI Framework
- expo-router: File-based routing
- @react-navigation/native: Navigation infrastructure
- Native Base: UI component library
- React Native Reanimated: Advanced animations
- Expo Vector Icons: Icon library
- @react-native-async-storage: Local storage
- TypeScript for type safety
- ESLint and Prettier for code consistency
- Component-based architecture
- Custom hooks for logic reuse
- Lazy loading of images and components
- Optimized list rendering
- Efficient state management
- Minimal re-renders
- Smooth animations
- Intuitive navigation
- Error boundaries for graceful error handling
- Loading states and feedback
- Dark mode support
- Secure storage for sensitive data
- Input validation
- Safe navigation
[Home Screen]
The home screen showcases featured events and categories.
[Event Details]
Detailed view of an event with booking options.
[Dark Mode]
The app supports a beautiful dark theme for comfortable viewing.
For support, email support@happening.com or join our Discord channel.
Contributions are welcome! Please read our contributing guidelines before submitting pull requests.
This project is licensed under the MIT License - see the LICENSE file for details.
Built with ❤️ by the Happening Team
All the pictures of the app:
the same readme.md file is posted on github repository

.png)
-1.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
-1.png)
.png)
.png)
.png)
.png)

.png)