First off, thank you for taking the time to contribute to MultiType.NET! 🎉 Your support and involvement help make this library more powerful and useful for everyone.
Whether you're fixing bugs, adding new features, or improving documentation — all contributions are welcome!
- 📘 Improve documentation or examples
- 🪲 Fix typos or bugs
- 🧪 Add unit tests
- 🚀 Add support for new features (e.g., new
Map*,Select*, orSwitch*variants) - 🛠️ Improve generator CLI tooling
git clone https://github.com/anzawi/MultiType.NET.git
cd MultiType.NETUse Visual Studio, Rider, or VS Code to open the MultiType.NET.sln solution file.
Make sure these compile without errors:
MultiType.NET.CoreMultiType.NET.GeneratorMultiType.NET.SourceGenerator
- Follow standard .NET conventions
- Keep
internalaccess level for all internal APIs - Public surface APIs should be clean, discoverable, and well-documented
- Use
readonly structwhere applicable
- Generator-related files should end with
.g.cs
will be provided soon...
If you want to:
- Ask a question
- Propose a feature
- Report a bug
Open an issue or start a discussion.
- Your code compiles without warnings
- You've tested your changes
- You've updated/added docs if needed
- You’ve followed existing code style
We appreciate every contributor who helps evolve MultiType.NET into a best union system for .NET.