This repository contains organization-wide documentation, templates, and configuration for all CoderDojo Oradea Space Robotics GitHub projects. It serves as a central location for standardization and resources across all our repositories.
Our organization uses GitHub for:
- Version Control: All software, hardware designs, and documentation use Git for version tracking
- Project Management: We use Issues and Projects to track tasks and deadlines
- Documentation: Technical guides, design documents, and competition deliverables
- Collaboration: Team members contribute and review each other's work through pull requests
- Knowledge Sharing: Historical record of design decisions and technical approaches
We maintain several types of repositories:
- Competition Repositories: One repository per annual competition (e.g., CanSat2024)
- Template Repositories: Reusable templates for documentation and code
- Learning Repositories: Training resources for new team members
- Configuration Repositories: Organization-wide configuration like this one
-
Account Setup:
- Create a GitHub account using your personal email
- Enable 2FA (two-factor authentication)
- Share your username with the team lead to get added to the organization
-
Local Environment:
- Install Git on your computer
- Configure Git with your name and email:
git config --global user.name "Your Name" git config --global user.email "your.email@example.com"
- Clone the relevant repositories:
git clone https://github.com/CoderDojoOradeaSpaceRobotics/CanSat2025.git
-
Branches:
main- Stable, production-ready codedevelop- Integration branch for ongoing developmentfeature/feature-name- For new featuresfix/bug-name- For bug fixes
-
Commit Messages:
- Use present tense ("Add feature" not "Added feature")
- First line is a summary (max 50 chars)
- Include the component/subsystem in square brackets, e.g.,
[sensors] Add temperature calibration - Reference issue numbers when applicable:
#123
-
Pull Requests:
- Create PRs for all substantial changes
- Request reviews from at least one team member
- PRs should include testing evidence
- Link to relevant issues
- Use lowercase with hyphens for spaces (
temperature-sensor.py) - Include date in reports (
2025-03-15-progress-report.pdf) - Version firmware with semantic versioning (
v1.2.3)
- All repositories must have a README.md
- Use Markdown for text documentation
- LaTeX for formal reports and papers
- Document code with docstrings and comments
- Include circuit diagrams for hardware
- Install Python 3.11 or newer
- Set up a virtual environment:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate pip install -r requirements.txt
- Install Arduino IDE or PlatformIO
- Required libraries:
- Adafruit Sensor
- Adafruit BME280
- TinyGPS++
- RadioHead
- KiCad 7.0 or newer or Autodesk Eagle
- Our component libraries (available in Document-templates)
- Standard test procedures are documented in
/documentation/testing/ - Log all test results in the appropriate data folder
- Include photos of hardware tests when possible
- Team Drive - Shared documents and resources
- Wiki - Extended documentation
- Issue Tracker - Project management
- LaTeX Templates - Standard document formats
- Technical discussions: GitHub Issues
- Quick team coordination: Discord
- Weekly status: Team meetings (minutes in Drive)
- External communications: Email
All our repositories are licensed under the MIT License unless otherwise specified.
For Team Members Only
This documentation is intended for internal use by CoderDojo Oradea Space Robotics team members.
