Contributing Guidelines
Welcome to OpenSource Camp! Here's everything you need to start contributing.
Welcome to OpenSource Camp
Thank you for your interest in contributing to CollegeUtils! This project is organized by ABV-IIITM IEEE Student Branch as part of our OpenSource Camp initiative. Whether you're a beginner or an experienced developer, there's a place for you here.
What is OpenSource Camp?
OpenSource Camp is a hands-on event where students learn to contribute to open source
projects. CollegeUtils is a collection of utility tools built entirely by contributors like you!
Getting Started
1Fork the Repository
Go to the GitHub repository and click the Fork button in the top right corner. This creates your own copy of the project.
2Clone Your Fork
cd college-utils
3Create an Issue (Claim Your Tool)
⚠️ Important: You must create an issue before starting work! This prevents duplicate work and helps maintainers track contributions.
Go to the Issues tab on GitHub and click "New Issue". Choose from these templates:
- 🛠️ Build a Tool — Pick an existing tool (CGPA, Attendance, etc.)
- 💡 Propose a New Idea — Claim an Idea slot and build your own tool!
- 🐛 Bug Report — Report any bugs you find
Fill in the template details and submit. A maintainer will review and assign it to you. Wait for assignment before starting work!
4Create a Branch
5Make Your Changes
Implement your feature following the coding guidelines below. Each tool has its own
dedicated page in the pages/ folder.
6Commit and Push
git commit -m "feat: Add [Your Tool Name]"
git push origin feature/your-tool-name
7Create a Pull Request
Go to your fork on GitHub and click New Pull Request. Fill in the
PR template with details about your implementation. Link it to your issue using
Closes #issue-number in the description.
Technical Guidelines
Allowed Technologies
- HTML5 - Structure your pages semantically
- CSS3 - Custom styles (use the existing
style.cssas base) - Vanilla JavaScript - No frameworks required, keep it simple!
File Structure
├── index.html # Home page with tool cards
├── css/
│ └── style.css # Global styles
├── pages/
│ ├── cgpa.html # Example tool page
│ ├── idea1.html # Available for contribution
│ └── ...
├── assets/
│ └── images/ # Images and icons
└── README.md
Coding Standards
- Use meaningful variable and function names
- Add comments to explain complex logic
- Follow consistent indentation (2 or 4 spaces)
- Keep your code clean and readable
- Test your tool thoroughly before submitting
- Ensure your tool is responsive and works on mobile
Pro Tip: Look at existing tool pages (like cgpa.html)
to understand the expected structure and styling patterns.
Available Tools to Build
Each tool has a dedicated page. Pick one that interests you and check if there's an open issue for it!
Difficulty Levels
Beginner Good for first-time contributors
Intermediate Requires some JavaScript experience
Advanced Complex logic or multiple features
Core Tools
CGPA Calculator
BeginnerAttendance Tracker
IntermediateTimetable Manager
IntermediateQuick Notes
BeginnerTo-Do List
BeginnerCountdown Timer
BeginnerUnit Converter
IntermediateExpense Tracker
IntermediatePassword Strength
BeginnerTyping Speed Test
IntermediateIdea Slots (Open for New Ideas!)
These slots are reserved for contributors who want to propose and build their own unique tools. Get an issue assigned to claim your spot!
Idea 1
AvailableIdea 2
AvailableIdea 3
AvailableIdea 4
AvailableIdea 5
AvailableIdea 6
AvailableIdea 7
AvailableIdea 8
AvailableIdea 9
AvailableIdea 10
AvailableCommit Message Guidelines
Use clear and descriptive commit messages following this format:
fix: Fix calculation error in attendance tracker
style: Update button styling on home page
docs: Update README with setup instructions
refactor: Simplify timer logic
Commit Types
feat- New feature or enhancementfix- Bug fixstyle- CSS/UI changesdocs- Documentation updatesrefactor- Code refactoringtest- Adding tests
Code of Conduct
We are committed to providing a welcoming environment for everyone. Please:
- Be respectful of differing viewpoints and experiences
- Give constructive feedback in a kind manner
- Help others learn - we're all here to grow!
- Ask questions - there are no stupid questions
- Celebrate contributions of all sizes
Need Help?
Reach out to the organizers or mentors during the OpenSource Camp.
We're here to guide you through your first contribution!
Contact & Support
If you have questions or need assistance:
- Open an issue on GitHub with the
questionlabel - Reach out to organizers during the OpenSource Camp event
- Join our communication channels (Discord/Slack - to be shared during the event)
Ready to Contribute?
Pick a tool, get the issue assigned, and start coding! Every contribution matters, no matter how small.
Browse Available Tools