Thank you for your interest in contributing to CFP Tracker! We aim to make conference speaking opportunities more accessible and manageable for everyone.
By participating in this project, you agree to maintain a welcoming, inclusive, and harassment-free environment for all contributors.
- Use the GitHub issue tracker
- Check if the issue already exists before creating a new one
- Include clear steps to reproduce bugs
- Suggest features with clear use cases
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Run tests and linting
npm run lint
- Commit your changes (
git commit -m 'Add amazing feature') - Push to your branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Keep changes focused and atomic
- Update documentation as needed
- Follow the existing code style
- Add tests for new features
- Ensure all tests pass
- Reference any related issues
- Ensure you have Node.js 18+ installed
- Fork and clone the repository
- Install dependencies:
npm install
- Start the development server:
npm run dev
cfps/
├── src/
│ ├── app/ # Next.js app router pages
│ ├── components/ # Reusable React components
│ └── utils/ # Helper functions and types
├── public/ # Static assets
└── package.json # Project dependencies and scripts
The project uses TypeScript for type safety. Key types:
CFP: Represents a conference Call for PapersConference: Conference detailsContinent: Valid continent values for filteringCFPStatus: Submission status types
- CSS Modules for component styling
- Mobile-first responsive design
- Follow the existing color scheme and design patterns
- Add tests for new features
- Ensure existing tests pass
- Follow existing test patterns
Feel free to open an issue for any questions about contributing.