Contribute
Novon is an open-source project, and we welcome contributions of all kinds. Whether you are a developer, a designer, or an avid reader, there are several ways to get involved.
Ways to Contribute
- Write Extensions: The most impactful way to help is by writing or maintaining JavaScript extensions for your favorite novel websites. Detailed documentation is available in the Extension System guide.
- Translate the App: Novon is a global app. Help us translate the user interface into your native language via our Crowdin or local localization files.
- Report Issues: Encountered a glitch or a broken extension? Open a detailed report on GitHub.
- Core Development: Help us improve the Dart/Flutter core. Browse our open issues for a
good first issuetag to get started.
Environment Setup
To contribute to the core Dart codebase, follow these steps to prepare your local development environment:
- Flutter SDK: Ensure you have the latest stable Flutter SDK installed.
- Repository: Clone the official repository:
git clone https://github.com/novon-app/novon.git. - Dependencies: Execute
flutter pub getto install all required packages. - Code Generation: Novon uses
FreezedandDrift. Run the build runner to generate the necessary boilerplate:bashdart run build_runner build --delete-conflicting-outputs - Execution: Connect a device or launch an emulator and run
flutter run.
Code of Conduct
We are committed to maintaining a respectful and welcoming environment. We encourage all contributors to follow best practices for web scraping and to respect the terms of service of the original content providers.