Thanks for your interest in contributing! 🎉 This guide explains how you can help improve FreeDevTools.
We welcome contributions of all kinds:
- 🛠️ New Tools – Add developer utilities
- 🐛 Bug Fixes – Improve reliability
- ✨ Enhancements – Extend features
- 📚 Documentation – Add guides and examples
- 🎨 UI/UX – Improve interface and usability
- 🌐 Translations – Make tools accessible worldwide
git clone https://github.com/YOUR_USERNAME/freedevtools.git
cd freedevtoolsgit checkout -b feature/amazing-new-toolCheck Node version:
lovestaco@i3nux-mint:~/hex/FreeDevTools/frontend$ node -v
v22.17.0Install make if not already installed:
- Debian/Ubuntu:
sudo apt install make - Fedora:
sudo dnf install make - Arch:
sudo pacman -S make - Windows:
choco install make
Open the frontend folder in your editor:
Install dependencies:
npm imake gen tool=gemini-schema-validatormake runOpen in browser: 👉 http://localhost:4321/freedevtools
git add .
git commit -m "feat: add amazing new tool"
git push origin feature/amazing-new-toolRequest a review. You can also ping us on Discord (invite below).
freedevtools/
├── frontend/ # Astro frontend application
│ ├── src/
│ │ ├── components/ # React components
│ │ ├── pages/ # Pages
│ │ ├── t/ # Tool directory
│ │ ├── gemini-schema-validator/
│ │ ├── index.astro
│ │ ├── _GeminiSchemaValidator.tsx
│ │ ├── _GeminiSchemaValidatorSkeleton.tsx
│ ├── config/ # Config files
│ ├── styles/ # CSS and styling
│ ├── public/ # Static assets
│ └── package.json # Dependencies
├── backend/ # Backend services (coming soon)
├── .github/ # GitHub workflows
├── LICENSE # MIT License
└── README.md # Documentation
- Use functional components + hooks
- Prefer TypeScript over JavaScript
- Use meaningful names
- Add JSDoc for complex functions
- Use TailwindCSS
- Mobile-first design
- Consistent spacing & typography
- Semantic HTML
- AI can be used, but always take suggestions from Admins(discord link below), we prefer quality over quantitiy.
- Ensure generated code follows project conventions
- Include
seo.mdin your workflow to define and improve titles, descriptions, and keywords when starting to build a tool - Always include
design.mdin your workflow for consistent styling and shared UI/UX rules
Follow Conventional Commits:
feat: add new tool for data conversion
fix: resolve issue with base64 encoding
docs: update contributing guidelines
style: improve button hover states
refactor: simplify tool configuration
test: add unit tests for json prettifier
- Automated Checks – CI/CD runs builds
- Code Review – Maintainers review
- Feedback – Make changes if requested
- Merge – Approved PRs are merged
- GitHub Issues – Bugs & requests
- GitHub Discussions – Q&A, ideas
- Pull Requests – Code contributions
- Discord – Chat and help
Before creating an issue:
- Search existing issues
- Check docs for answers
- Try to reproduce consistently
- Provide details:
- Steps to reproduce
- Expected vs actual behavior
- Environment details
- Screenshots (if applicable)
We appreciate every contribution! 🙌
- Listed in Contributors on GitHub (please update README.md in the same PR)
- Special thanks in docs (please update README.md in the same PR)
Your contributions make FreeDevTools better for everyone.
Please consider giving us a ⭐ star on GitHub! It helps us reach more developers who could benefit from these utilities.


