- Expo
- Expo Router
- expo-image
- zustand - state management
- nativewind - Tailwind CSS for React Native
- axios - Promise based HTTP client
- i18next - Internationalization-framework
- @shopify/flash-list - React Native flash list component
- OneSignal - Push Notification delivery
- Lottie - Animated Splash Screen
- Clone the new repository.
- Install dependencies.
yarn install
- Run the project
yarn ios | yarn start -> i (for ios)
- Create a .env file in the root of the project.
- Define env variables inside the .env file
- Use env variqables everywhere by import env-loader
import ENV from '_utils/env-loader';
const env_weather_api_key = ENV.WEATHER_API_KEY;
That's it! Nice and simple way of dealing with environment variables.
- src - source code for the application.
- /components - contains reusable components.
- /screens - contains the application's screens.
- /assets - contains the application's assets (all the assets stored here will be bundled into the app).
- /config - contains the application's config files.
- /constants - contains the application's constants.
- /context - contains the application's theme.
- /locales - contains the application's local files (i18n, i18next, expo-localization).
- /store - contains the application's zustand store for state managment.
- /utils - contains the application's utils for helper functions.
Main screens:
- Login
- Signup
- Home Screen
- Secondary Screen
- Settings Screen
- Top Navigation , Bottom Navigation, Native Modal
I would like to thank the following people who've contributed to this project: @kewinzaq1