Platform for rapid software development
Features:
- Role&Context Base Security
- Column Base Restrictions
- Notification and subscriptions
- Reporting
- Integration
- Hangfire https://www.hangfire.io/ (jobs)
- CAP https://cap.dotnetcore.xyz/
- Data Audit (Inline + Envers)
- Logging
- Validation
- Code Generation
- DataBase Generation
- DTO/Mapping Generation
- ORM Mapping Generation
- RestApi Generation
- TypeScript Generator https://github.com/Luxoft/gengen
- Unit Testing
- Integration Testing
Two ORMs are supported: NHibernate and Entity Framework. Stack: .NET 10, C# latest, nullable enabled. Packages are published to NuGet as Luxoft.<ProjectName>.
| Document | Contents |
|---|---|
| docs/architecture.md | Layers, repository layout, structure of an application built on the framework, DI composition |
| docs/codegeneration.md | What is generated, how to run generators, the CheckGenTests CI check, DB schema generation |
| docs/integrationtests.md | SQL Server setup, settings, how to write and run integration tests |
| docs/legacy.md | The *.Legacy* projects and how to recognise legacy API |
| docs/subsystems/security.md | Roles, contexts, rules, virtual permissions |
| docs/subsystems/validation.md | Validation attributes and custom validators |
| docs/subsystems/audit.md | Inline audit, Envers audit, change tracking |
| docs/subsystems/notification.md | Subscriptions, templates, mail pipeline, SMTP settings |
| docs/subsystems/jobs.md | Hangfire jobs, schedules, named locks |
| CONTRIBUTING.md | Build, test, conventions, how to contribute |
Notes for AI agents are in AGENTS.md.
The reference application is src/_SampleSystem. It is the best example of using the framework, and all integration tests run against it.
dotnet build src/BssFramework.slnx -c Release
dotnet test --project src/_SampleSystem/_Tests/SampleSystem.UnitTestsA new system on the framework is built in this order (see architecture for details):
- Describe domain entities with attributes (
*.Domain). - Describe security (contexts, roles, rules), validation and subscriptions.
- Configure the generation environment and run the generators (codegeneration): DAL, BLL, DTO, controllers.
- Create the DB schema with migrations.
- Compose the host:
AddBssFramework+ the ORM-specificIBssFrameworkExtension.