-
Notifications
You must be signed in to change notification settings - Fork 1
Contributing Guide
BytexGrid edited this page Jan 16, 2025
·
1 revision
Thank you for your interest in contributing to SoftStacker! This guide will help you get started with contributing to the project.
By participating in this project, you agree to abide by our Code of Conduct. Please read it before contributing.
- Check if the bug has already been reported in the Issues section
- If not, create a new issue with the following information:
- Clear title and description
- Steps to reproduce
- Expected behavior
- Actual behavior
- Screenshots if applicable
- Your environment (OS, browser, etc.)
- Check if the enhancement has already been suggested
- Create a new issue with:
- Clear title and description
- Use case for the enhancement
- Any potential implementation details
- Mock-ups or examples if applicable
- Fork the repository
- Create a new branch:
git checkout -b feature/your-feature-name
- Make your changes following our coding standards
- Write or update tests as needed
- Run the test suite:
npm run test - Commit your changes:
git commit -m "feat: add amazing feature" - Push to your fork:
git push origin feature/your-feature-name
- Open a Pull Request
- Use TypeScript for all new code
- Follow the existing code style
- Use meaningful variable and function names
- Add comments for complex logic
- Keep functions small and focused
- Use functional components with hooks
- Keep components small and reusable
- Follow atomic design principles
- Use proper TypeScript types
- Add prop validation
- Write unit tests for utilities
- Add integration tests for API routes
- Test components using React Testing Library
- Maintain good test coverage
Follow conventional commits:
-
feat:New feature -
fix:Bug fix -
docs:Documentation changes -
style:Code style changes -
refactor:Code refactoring -
test:Adding or updating tests -
chore:Maintenance tasks
- Update README.md if needed
- Add JSDoc comments to functions
- Update API documentation for new endpoints
- Add inline comments for complex logic
softstacker/
├── app/ # Next.js pages and API routes
├── components/ # React components
├── lib/ # Utility functions
├── types/ # TypeScript types
└── tests/ # Test files
-
app/: Contains all pages and API routes -
components/: Reusable UI components -
lib/: Helper functions and utilities -
types/: TypeScript type definitions -
tests/: Test files matching the source structure
-
Install dependencies:
npm install
-
Set up environment variables:
cp .env.example .env.local
-
Set up pre-commit hooks:
npm run prepare
-
Start development server:
npm run dev
- Check the FAQ
- Join our Discord community
- Read the Developer Guide
- Contact the maintainers
Contributors will be added to our Contributors list in the README.md file.