Thank you for considering contributing to NoterAI! We’re excited to have you on board. Before you start, please read our contribution guidelines carefully.
- Code of Conduct
- How Can You Contribute?
- Getting Started
- Installation Guide
- Coding Guidelines
- Commit Message Guidelines
- Submitting Issues
- Pull Request Guidelines
- License
- Contact
Please make sure to review and adhere to our Code of Conduct to ensure a respectful and welcoming environment for all contributors.
We appreciate any type of contribution:
- Report Bugs: Submit bugs via our GitHub issue tracker.
- Feature Requests: Have ideas for new features? Share them via GitHub.
- Code Contributions: Help us by fixing bugs, writing new features, or improving the documentation.
- Documentation: Help improve the documentation to make the project more accessible.
Ensure you have the following installed:
- Node.js (>= version X.X.X)
- npm (>= version X.X.X)
- Flutter (>= version X.X.X)
- pnpm (>= version X.X.X)
- Docker (for setting up Redis and the database)
For platform-specific requirements:
- iOS/macOS: Xcode for Swift and CocoaPods setup.
- Android: Android Studio and necessary SDKs.
- Backend: NestJS, Prisma, Redis
- Mobile (Android, Windows, Linux): Flutter
- iOS, macOS: Swift
- Web: Next.js
- AI: NestJS (TypeScript), Python
- /dev-docs: Documentation related to the project.
- /apps/flutter: Flutter code for mobile and desktop.
- /apps/backend: Backend code organized in a microservices architecture.
- /apps/swift: Swift code for iOS/macOS.
- /apps/web: Web code (Next.js).
For detailed installation instructions, refer to the Installation Guide.
Refer to our Installation Guide for detailed setup instructions.
We follow TDD, clean code principles, and modular architecture. Make sure your code is:
- Well-documented.
- Includes tests.
- Passes linting and formatting checks.
Run the following before committing:
pnpm format
pnpm lint
We use pre-commit hooks to ensure code quality:
"pre-commit": "pnpm format && pnpm lint && pnpm build"
Follow the Conventional Commits format:
- feat: New feature.
- fix: Bug fix.
- docs: Documentation update.
- style: Code formatting changes.
- refactor: Code refactoring without changing functionality.
- test: Adding or modifying tests.
To submit an issue, follow these steps:
- Search for duplicates: Check if an issue already exists.
- Describe the issue: Provide a detailed description, steps to reproduce, and any relevant screenshots.
- Suggest potential fixes: If applicable, propose a solution.
- Fork the repository and create a new branch.
- Write clean, modular, and test-driven code.
- Update the documentation if necessary.
- Run tests and ensure all checks pass.
- Open a pull request with a clear description of the changes.
This project is licensed under a Custom License that restricts commercial use. See the LICENSE file for more details.
If you have any questions, feel free to contact us at hyattherate2005 [at] gmail.com.