Thanks for your interest in contributing to Siduri!
- Fork and clone the repository
- Copy
.env.exampleto.envand configure your environment - Install dependencies:
npm install
- Start the development server:
npm run dev
- Open http://localhost:8080
- ES6+ JavaScript (no TypeScript)
- 2-space indentation
- Single quotes for strings
- Semicolons required (match existing style)
- Descriptive variable names
siduri/
├── server/ # Express backend
│ ├── routes/ # API endpoints
│ ├── lib/ # Utilities (db, gcs, auth)
│ └── middleware/ # Express middleware
├── public/ # Frontend (vanilla JS)
│ ├── js/ # Page scripts
│ └── css/ # Styles
└── functions/ # Google Cloud Functions
- Create a feature branch from
main:git checkout -b feature/your-feature-name
- Make your changes
- Test locally to ensure nothing breaks
- Update README.md if you're adding features
- Commit with a clear message:
git commit -m "Add feature: description" - Push and open a Pull Request
- Use GitHub Issues for bug reports and feature requests
- Include steps to reproduce for bugs
- Check existing issues before creating new ones
For security vulnerabilities, please open a private security advisory on GitHub instead of a public issue.
Open a GitHub Discussion or issue if you have questions about contributing.