Thank you for considering contributing to the Open Source Weekend (OSW) website! 🎉
OSCF serves as a platform for developers, enthusiasts, and organizations to come together, share knowledge, and contribute to open-source projects. OSW is a community-driven initiative that promotes open source technologies through events, workshops, and celebrations.
This project and everyone participating in it is governed by the Code of Conduct. By participating, you are expected to uphold this code.
Before contributing, ensure you have the following installed and set up:
- Node.js (latest LTS version recommended)
- pnpm (recommended for faster installs and improved developer experience)
- Git (for version control)
- A GitHub account
If you don't have pnpm installed, you can install it globally:
npm install -g pnpm
To contribute, follow these steps:
- Fork the Repository: Click the "Fork" button at the top right of the repository page to create your own copy of the repository.
- Clone Your Fork: Clone your forked repository to your local machine:
git clone https://github.com/<your-username>/osw-website.git
- Navigate to the Project Directory:
cd osw-website - Install Dependencies:
pnpm install
- Create a New Branch: Always create a new branch for your changes:
git checkout -b feature/your-feature-name
There are many ways to contribute to the OSW website:
For Beginners:
- Fix typos and improve documentation
- Update outdated links or information
- Add missing alt-text to images
- Improve accessibility features
For Developers:
- Add new features and functionality
- Fix bugs and issues
- Improve performance and optimization
- Enhance responsive design
- Create reusable components
For Designers:
- Improve UI/UX design
- Create graphics and illustrations
- Enhance mobile experience
- Design new page layouts
- Always create an issue before starting work on a new feature or bug fix. This ensures that the work is aligned with the project goals and avoids duplication of effort.
- Follow the Conventional Commits specification for commit messages. This helps maintain a clean and understandable commit history.
- Write clear and concise documentation for any new features or changes.
- Ensure your code is well-tested and includes unit tests where applicable.
- Respect the project's coding standards and style guides.
- Be responsive to feedback during the code review process.
- Use descriptive branch names following the conventions outlined in the "Branch Naming Conventions" section.
- Before merging any branch, perform an interactive rebase to clean up the commit history:
This ensures a clean and meaningful commit history.
git rebase -i main
- Always update your branch with the latest changes from
mainbefore creating a pull request:git checkout main git pull origin main --rebase git checkout your-branch git rebase main
- Keep pull requests small and focused. Avoid bundling multiple unrelated changes in a single PR.
- Include a clear and detailed description of the changes in the pull request.
- Reference the issue(s) your pull request addresses.
- Ensure all tests pass and the build succeeds before submitting a pull request.
- Request reviews from relevant contributors or maintainers.
Write clear, concise commit messages following the Conventional Commits specification.
Format:
<type>[optional scope]: <description>Types:
feat: New features (feat(speakers): add speaker bio modal)fix: Bug fixes (fix(navigation): resolve mobile menu overlap)docs: Documentation (docs: update installation guide)style: Code formatting (style(components): fix indentation)refactor: Code restructuring (refactor(utils): simplify date helpers)perf: Performance improvements (perf(images): optimize loading)test: Adding tests (test(auth): add login validation tests)build: Build system changes (build: update webpack config)ci: CI/CD changes (ci: add automated testing)chore: Maintenance tasks (chore: update dependencies)
- Write clean, readable code with meaningful variable names.
- Add comments for complex logic.
- Follow existing code patterns and structure.
- Ensure all builds pass without warnings.
- Test responsive design on multiple devices.
Remember: Every contribution, no matter how small, makes a difference in building a stronger open source community! 🚀
Thank you for being part of the Open Source Weekend community and helping us create amazing experiences for developers and tech enthusiasts worldwide!
Happy Contributing! 🚀