Welcome Contributors!
Set|File is an open source project that thrives on community participation. Whether you're a developer, writer, educator, or simply someone who uses SET files, there are many ways you can help make this format better.
Why Contribute?
- Help shape a practical, human-readable file format
- Build tools that benefit the entire community
- Learn by contributing to an open specification
- Get recognized for your work
- Connect with other developers and users
Ways to Contribute
Share Your Use Cases
The most valuable contribution you can make is showing how you use Set files. Real-world examples help others learn and guide format improvements.
- Post examples in the comments on relevant documentation pages
- Share configuration files from your projects
- Describe problems Set files solved for you
- Submit examples to our examples directory
Improve Documentation
Help make Set files easier to learn and use:
- Fix typos and clarify confusing sections
- Add examples that demonstrate specific features
- Write tutorials for your use case
- Translate documentation (future)
- Answer questions in page comments
Small improvements matter! See a typo? Fix it. Found a confusing sentence? Clarify it. Notice a missing example? Add it.
Build Parser Implementations
We need Set file parsers in many programming languages:
Current implementations:
- JavaScript/Node.js
- Python
Wanted:
- Ruby, Go, Rust, Java, C#, PHP, and more!
Building a parser is a great way to deeply understand the format. See our Parser Implementation Guidelines.
Report Issues & Suggest Features
Found a bug or have an idea?
When reporting issues, include:
- Clear description of the problem
- Example Set file that demonstrates it
- Expected vs. actual behavior
- Parser/implementation you're using (if applicable)
Write About Set Files
Help spread the word:
- Blog about your use case
- Compare Set files to alternatives (JSON, YAML, TOML)
- Create video tutorials
- Present at meetups or conferences
- Share tips and tricks
Let us know when you publish something - we'll link to it!
Test & Provide Feedback
Try Set files in your projects and share your experience:
- What works well?
- What's confusing?
- What features are missing?
- How does it compare to what you used before?
Your feedback helps guide the format's evolution.
Getting Started
New to Set files? Start here:
- Read the Quick Start Guide (5 minutes)
- Try creating a Set file for your project
- Join the conversation in page comments
- Look for "good first issue" tags on GitHub
Ready to code? See the technical details:
Contribution Process
For Quick Changes
- Make your change
- Submit via GitHub pull request or email kirk@setfiles.org
- Respond to any feedback
For Larger Changes
- Open a GitHub discussion first
- Get feedback on your approach
- Implement your change
- Submit for review
- Iterate based on feedback
Community Guidelines
We're building a welcoming, constructive community. Please:
- Be respectful - Value different perspectives and experiences
- Be constructive - Offer helpful feedback and suggestions
- Be collaborative - We're here to learn and improve together
- Be patient - Everyone has different backgrounds and experience levels
Recognition
Contributors are recognized in:
- README.md contributors section
- Release notes
- Documentation credits
Every contribution matters, from fixing typos to building complete parsers!
Questions?
Thank you for helping make Set Files better!
Get Started | View on GitHub | Community Guidelines