This is an Expo project created with create-expo-app.
-
Install dependencies
npm install
-
Start the app
npx expo start
In the output, you'll find options to open the app in a
- development build
- Android emulator
- iOS simulator
- Expo Go, a limited sandbox for trying out app development with Expo
You can start developing by editing the files inside the app directory. This project uses file-based routing.
When you're ready, run:
npm run reset-projectThis command will move the starter code to the app-example directory and create a blank app directory where you can start developing.
To ensure a smooth workflow for our mobile app project, please follow these conventions when contributing.
-
Never Push Directly to
main(ormaster):
All changes should go through feature branches and pull requests to ensure proper code review and testing. -
Branch Types:
- Feature Branches: For new features.
Example:feature/login-screen - Bugfix Branches: For bug fixes.
Example:bugfix/crash-on-load - Hotfix Branches: For urgent fixes on production code.
Example:hotfix/fix-payment-error - Release Branches (Optional): For preparing a release.
Example:release/v1.2.0
- Feature Branches: For new features.
-
Use Lowercase and Hyphens:
This improves readability and consistency.
Examples:feature/user-authenticationbugfix/navigation-error
-
Keep it Descriptive:
Include a short description of the change so others can easily understand the purpose.
Use a consistent commit message format to maintain a clear project history. We follow the Conventional Commits standard:
- Format:
-
Types:
feat:— for new featuresfix:— for bug fixesdocs:— for documentation changesstyle:— for formatting changes (no code logic changes)refactor:— for code refactoringtest:— for adding or modifying testschore:— for changes to build process, auxiliary tools, etc.
-
Examples:
feat(auth): add login screen with validationfix(api): resolve crash when fetching user datadocs(readme): update installation instructions
-
Additional Guidelines:
- Keep the subject line concise (preferably under 50 characters).
- Include a longer description in the commit body if needed.
-
Always Open a Pull Request (PR):
- When your feature or fix is ready, open a PR to merge your branch into
main.
- When your feature or fix is ready, open a PR to merge your branch into
-
Review Process:
- At least one other team member should review the PR.
- Ensure tests pass and code style guidelines are met.
- Link related issues in the PR description.
-
Merge Strategy:
- Prefer Squash Merging: Keeps a clean history by consolidating commits.
- Rebase Regularly: Keep your branch up-to-date with the base branch to avoid conflicts.
-
Keep Commits Atomic:
- Each commit should represent a single logical change.
-
Descriptive PR Titles and Descriptions:
- Use clear titles and detailed descriptions to help others understand the purpose of the changes.
-
Document Your Workflow:
- New team members should refer to these guidelines to get up to speed quickly.