Help make Zmind better for everyone! We welcome contributions from the community
Ready to contribute? Here's how to get your development environment set up:
Create your own fork of the Zmind repository on GitHub
Clone your fork and set up the upstream remote for easy syncing
Follow the self-hosting guide to set up your local development environment
Create a feature branch for your changes: git checkout -b feature/amazing-feature
There are many ways to help improve Zmind:
To set up your local development environment, follow our comprehensive self-hosting guide:
The self-hosting guide covers all prerequisites, dependencies, and configuration needed for development. Once you've completed the setup, you can start contributing to the project.
Follow these guidelines to maintain code quality and consistency:
Use strict TypeScript, avoid 'any' types, define proper interfaces
Use functional components with hooks, follow naming conventions
Use shadcn/ui components for consistency, avoid custom CSS when possible
Use comprehensive type hints, follow PEP 484 standards
Follow FastAPI best practices for endpoints, dependencies, and models
Implement proper exception handling with structured error responses
Follow these steps when submitting a pull request:
Branch from main: git checkout -b feature/your-feature-name
Implement your feature or fix, following our code guidelines
Run tests, check functionality, ensure no regressions
Write descriptive commit messages following conventional commits
Push to your fork and create a pull request with a clear description
Address reviewer comments and make necessary adjustments
Connect with other contributors and get help with your contributions: