Why Use Benevia Core?
1. Rapid API Development with Automatic CRUD
Benevia Core automatically generates RESTful OData APIs for your entities. Simply decorate your classes with [ApiEntity] and your properties get exposed via HTTP endpoints with full CRUD operations, filtering, sorting, and OData query capabilities.
2. Automatic Business Logic Execution
Business logic executes automatically during entity lifecycle events without manual intervention. The framework handles validation, computed properties, defaults, and custom logic through an event-driven system that triggers as properties change.
3. Declarative Business Logic
Business logic is kept separate from entity definitions in dedicated classes, making code more maintainable and testable. You define handlers for specific events (Changed, Compute, Validate, PreSave) that execute automatically.
4. Zero Manual Database Migrations
The platform automatically compares your entity model with the database schema and applies changes (tables, columns, indexes) on startup. No manual migration scripts needed.
5. Built-in Multi-tenancy
The framework includes native support for multi-tenant applications with JWT authentication and per-tenant database connections.
6. Extensible Library Ecosystem
A growing collection of optional libraries that integrate seamlessly with your models and with each other. Add blob storage, workflows, contacts, full-text search, and others with just a NuGet package. The roadmap includes features like MCP scaffolding, discussion models, and more.
When to Use Benevia Core
Ideal Scenarios
Benevia Core is specifically designed for server-centric, data-driven applications where business logic and data relationships are at the core. It excels in:
Business Applications & ERP Systems The platform was purpose-built for ERP and business management applications with complex business rules, validations, and entity relationships. Perfect for applications where data integrity and server-side business logic are paramount.
Domain-Specific Applications Whether you're building software for healthcare, education, logistics, or any specialized domain, Benevia Core's declarative business logic and automatic API generation let you focus on domain-specific requirements rather than infrastructure plumbing.
Multi-Tenant SaaS Applications The platform includes built-in JWT authentication and per-tenant database connections, making it particularly powerful for building SaaS platforms that serve multiple customers from a single codebase. Each tenant gets isolated data storage while sharing the same application logic and infrastructure. That said, multi-tenancy is entirely optional—you can use Benevia Core for single-tenant applications and still benefit from all the other features.
Backend for Mobile Applications The OData RESTful APIs generated by Benevia Core provide mobile apps with powerful querying, filtering, and sorting capabilities out of the box. The server-side business logic ensures data consistency regardless of which client accesses it.
Parent/Child Data Hierarchies Applications centered around entities with natural hierarchical relationships shine on this platform. Examples include:
- Assignments and their Grades
- Sales Orders and line items
- Invoices and invoice details
- Projects and tasks
Complex Validation & Cross-Entity Effects When data entry requires validation, computations, and affects multiple related entities, Benevia Core's event-driven architecture handles this elegantly. For example, sales orders influenced by customer credit limits, pricing rules, inventory levels, and tax calculations all update automatically through the framework's event system.
Security-Critical Applications Applications where data access control and server-side validation are essential. The platform's server-centric design ensures sensitive business logic and validation rules cannot be bypassed by client manipulation.
Rapid Prototyping & MVP Development When you need to quickly stand up a full-featured API with authentication, OData querying, automatic CRUD operations, and database management without writing boilerplate code.
Event-Driven Architectures Systems that benefit from separating business logic into event handlers that respond to entity lifecycle changes, enabling better testability and maintainability.
When to Look Elsewhere
Benevia Core is not ideal for:
Static Content Websites Simple websites serving primarily static content (blogs, marketing sites, documentation) don't need the automatic CRUD, business logic, or database features that Benevia Core provides. A static site generator or traditional CMS would be more appropriate.
Real-Time Multi-User Interaction The platform doesn't solve for real-time multi-user scenarios, such as direct messaging and live collaboration. While it does support multiple users, it doesn't solve real-time client updates.
Client-Heavy Applications Applications where most of the processing happens on the client side aren't a good fit. This includes:
- Graphics editors and image manipulation tools
- Word processors and document editors (like MS Word)
- CAD and 3D modeling software
- Drawing and illustration applications
- Real-time collaborative whiteboards
These applications require rich client-side interactions and minimal server-side business logic, which doesn't leverage Benevia Core's strengths. While Benevia Core may be used in part, it's likely not to accelerate development significantly.