Thank you for your interest in contributing to recode hive! We're excited to have you join our community of learners, developers, and open-source enthusiasts. This guide will help you get started with contributing to our project.
- Code of Conduct
- How Can I Contribute?
- Getting Started
- Development Setup
- Making Changes
- Submitting Changes
- Community
By participating in this project, you agree to abide by our Code of Conduct. We are committed to providing a welcoming and inclusive environment for all contributors, regardless of experience level, background, or identity.
Key principles:
- Be respectful and constructive in all interactions
- Welcome newcomers and help them feel included
- Give and receive feedback gracefully
- Focus on what's best for the community
- Show empathy towards other community members
There are many ways to contribute to recode hive:
Before you begin, ensure you have the following installed:
- Node.js ≥ 18 (Download)
- Git (Download)
- Docker (optional, but recommended) (Download)
- A code editor (we recommend VS Code)
-
Fork the repository by clicking the "Fork" button at the top right of the GitHub page
-
Clone your fork to your local machine:
git clone https://github.com/YOUR-USERNAME/recode-website.git
cd recode-website- Add the upstream remote to stay synced with the main repository:
git remote add upstream https://github.com/recodehive/recode-website.gitChoose your preferred setup method:
Build and run with Docker:
# Build the image
docker build -t recodehive-app .
# Run the container
docker run -p 3000:3000 recodehive-appOr use Docker Compose for hot-reload:
docker-compose upInstall dependencies:
npm installStart the development server:
npm run startYour application will be available at http://localhost:3000
Once running, you should see the recode hive homepage. Try navigating through the tutorials and documentation to ensure everything works correctly.
Always create a new branch for your changes:
git checkout -b feature/your-feature-nameBranch naming conventions:
feature/- for new features (e.g.,feature/add-python-tutorial)fix/- for bug fixes (e.g.,fix/navigation-bug)docs/- for documentation (e.g.,docs/improve-contributing-guide)style/- for styling changes (e.g.,style/update-button-colors)refactor/- for code refactoring (e.g.,refactor/simplify-api-calls)
Follow these guidelines while coding:
- Keep it simple - Write clear, readable code
- Comment when necessary - Explain complex logic
- Test your changes - Ensure everything works as expected
- Follow existing patterns - Maintain consistency with the codebase
- Make atomic commits - Each commit should represent a single logical change
Write clear, descriptive commit messages:
git add .
git commit -m "Add: brief description of your changes"Commit message format:
Add:- for new featuresFix:- for bug fixesUpdate:- for updates to existing featuresRemove:- for removing features or filesRefactor:- for code refactoringDocs:- for documentation changesStyle:- for formatting changes
Example:
git commit -m "Add: Python tutorial for data structures"
git commit -m "Fix: Navigation menu not displaying on mobile"
git commit -m "Docs: Update installation instructions"Before submitting, ensure your branch is up to date:
# Fetch upstream changes
git fetch upstream
# Merge upstream changes into your branch
git merge upstream/maingit push origin feature/your-feature-name-
Navigate to your fork on GitHub
-
Click "Compare & pull request"
-
Fill out the PR template with:
- A clear, descriptive title
- Detailed description of your changes
- Reference any related issues (e.g., "Closes #123")
- Screenshots (if applicable)
- Testing steps
-
Submit the pull request
- A maintainer will review your PR
- You may be asked to make changes
- Be responsive to feedback and questions
- Once approved, your PR will be merged!
Need assistance? We're here to help!
- Discord: Join our Discord server
- GitHub Discussions: Ask questions in Discussions
- Issues: Check existing issues or create a new one
- Website: recodehive.com
- LinkedIn: Sanjay K V
- Twitter: @sanjay_kv_
- YouTube: @RecodeHive
- Newsletter: Subscribe
New to contributing? Watch this helpful video:
flowchart LR
A[Fork Repository] --> B[Clone to Local]
B --> C[Create New Branch]
C --> D[Make Changes]
D --> E[Test Changes]
E --> F[Commit Changes]
F --> G[Push to Fork]
G --> H[Create Pull Request]
H --> I[Address Feedback]
I --> J[PR Merged]
All contributors are recognized in our README! Your contributions, big or small, help make recode hive better for everyone.
If you have any questions that aren't covered in this guide, feel free to:
- Open an issue with the "question" label
- Ask in our Discord community
- Reach out to the maintainers
By contributing to recode hive, you agree that your contributions will be licensed under the MIT License.
