Thank you for your interest in contributing to Streamium! This document provides guidelines and instructions for contributing.
- Fork the repository
- Clone your fork:
git clone https://github.com/gmonarque/streamium.git
- Create a new branch:
git checkout -b feature/your-feature-name
- Copy
.env.example
to.env
and configure your environment variables - Install dependencies:
npm install
- Initialize the database:
npx prisma migrate dev
- Start the development server:
npm run dev
- Use TypeScript for type safety
- Follow the existing code style and formatting
- Use meaningful variable and function names
- Keep functions small and focused
- Add comments only when necessary to explain complex logic
- Use clear and descriptive commit messages
- Start with a verb in present tense (e.g., "Add", "Fix", "Update")
- Reference issue numbers when applicable
Example:
Add password strength validation
Fix rate limiting on login endpoint
Update user profile UI components
- Update your branch with the latest main branch
- Ensure all tests pass
- Update documentation if needed
- Create a pull request with a clear description of changes
- Link any related issues
- Write tests for new features
- Ensure existing tests pass
- Test your changes in different browsers
- Check mobile responsiveness
- Follow security guidelines in SECURITY.md
- Never commit sensitive data
- Use environment variables for secrets
- Implement rate limiting for new endpoints
- Validate and sanitize all user input
streamium/
βββ src/
β βββ lib/ # Components, services, stores
β βββ routes/ # SvelteKit routes and API
β βββ app.html # App template
βββ prisma/
β βββ schema.prisma # Database schema
βββ static/ # Static assets
- Check existing issues and pull requests
- Read the documentation
- Ask questions in discussions
- Follow the code of conduct
- Be respectful and inclusive
- No harassment or discrimination
- Constructive feedback only
- Follow project maintainers' decisions
Thank you for contributing to Streamium!