Thank you for your interest in contributing to Nyarm! We welcome contributions from everyone.
- Node.js (v18 or higher)
- npm or yarn
- Expo CLI (
npm install -g expo-cli) - Android device or emulator (for testing)
- Fork this repository
- Clone your fork:
git clone https://github.com/YOUR_USERNAME/nyarm-android.git cd nyarm-android - Install dependencies:
npm install
- Start the development server:
npx expo start
- Check if the bug is already reported in Issues
- If not, create a new issue with:
- Clear title
- Steps to reproduce
- Expected vs actual behavior
- Device/OS information
- Open a new issue with the
enhancementlabel - Describe the feature and why it would be useful
- Include mockups or examples if possible
- Create a new branch:
git checkout -b feature/your-feature-name
- Make your changes
- Test thoroughly on Android device/emulator
- Commit with clear messages:
git commit -m "Add: description of what you added" - Push and create a Pull Request
nyarm-android/
├── App.tsx # Main app entry
├── src/
│ ├── components/ # UI components
│ ├── hooks/ # Custom React hooks
│ ├── utils/ # Utility functions
│ └── types/ # TypeScript types
├── assets/ # Images and assets
└── app.json # Expo configuration
- Use TypeScript for all new files
- Follow existing code patterns
- Use meaningful variable/function names
- Add comments for complex logic
- Keep components small and focused
Before submitting a PR, make sure:
- Code compiles without errors
- App runs on Android device/emulator
- No TypeScript errors
- Commit messages are clear
- PR description explains the changes
Feel free to open an issue with the question label or reach out!
🐱 "Thanks for helping make Nyarm better, nya~!"