Contributing
Thank you for your interest in contributing to PuzzleSpring! This document provides guidelines and information for contributors.
Development Process
Branching Strategy
main
branch represents the latest stable version- Create feature branches from
main
using the format:feature/description
orfix/description
- Keep branches focused on a single feature or fix
Making Changes
- Create a new branch for your changes
- Make your changes following our coding standards
- Write or update tests as needed
- Update documentation if required
- Commit your changes with clear, descriptive commit messages
Project Structure
config/
- Configuration filespuzzlehunt/
- Main Django applicationmanagement/
- Management commandsmigrations/
- Database migrationsstatic/
- Static assetstemplates/
- Django templates
scripts/
- Documentation generation and utility scriptsserver/
- Django project configuration fileswebsite/
- Documentation and landing pagedocs/
- Jekyll-based documentationpublic/
- Landing page files
Coding Standards
Python Code
- Follow PEP 8 style guide
- Use meaningful variable and function names
- Add docstrings for functions and classes
- Keep functions focused and concise
Templates
- Use Bulma classes for styling
- Prefer HTMX for dynamic interactions
- Follow the established template hierarchy
- Document template blocks and context variables
Documentation
- Update documentation for new features
- Follow the existing documentation style
- Include examples where appropriate
License
By contributing to PuzzleSpring, you agree that your contributions will be licensed under the MIT License.