UNI Framework is a comprehensive .NET-based development framework providing both API and UI capabilities for building modern, scalable applications.
Provide a self-generating front-end platform, with the smallest possible codebase, with close to zero boilerplate code. We made some executive decisions regarding the shape/contract/interface of our models. We used some attributes and type T where T : BaseModel
instantiation of archetype ViewModels which in turn drive the associated archetype Views, creating individual children controls and bindings to the models' chosen properties at runtime.
And, these driving ViewModels and Views can be extended and customized with minimal code additions in the UNI app that runs on top of UNI.Core.UI (not on the code present in this repo. See UNI.Core.Explorer for an example.)
UNI is DRY.
UNI is KISS.
UNI is YAGNI.
UNI is not SOLID. (maybe just the "S")
UNI is not TDD. (you're welcome to help)
UNI is not DDD.
UNI is not exactly CLEAN, not strictly HEXAGONAL nor a VERTICAL SLICE architecture.
UNI has no DI.
UNI was created mainly by a self-taught developer with only 2-3 years of experience total, spent building WPF and UWP apps. He was tired of writing the same code over and over again.
Arguably, that developer would do today a much better job, but he had to move on to other things!
- UNI.API Solution - API framework for building scalable UNI REST API services
- UNI.Core Solution - UI framework for building scalable UNI UWP Windows Desktop apps
- Choose solution based on needs:
UNI.API.sln
for web servicesUNI.Core.sln
for UI components
- Follow solution-specific README
- Use provided test instances/explorers
- Fork repository
- Create feature branch
- Implement changes with tests
- Submit pull request
- Await review
UNI.Framework/
├── UNI.API/
│ ├── UNI.API/
│ ├── UNI.API.Client/
│ ├── UNI.API.Contracts/
│ └── ...
├── UNI.Core/
│ ├── UNI.Core.Library/
│ ├── UNI.Core.UI/
│ └── ...
└── README.md
MIT License - see LICENSE file
Built with ❤️ by orlodax and Teksistemi