SlappFramework.Template
1.0.1
dotnet new install SlappFramework.Template::1.0.1
Welcome to SlappFramework!
a SQL-centric, CRUD-blasting web app starting point - supports Excel imports, grid editing, and form workflows with zero validation code.
Quick Start (4 Steps)
0. Configure EPPlus License (REQUIRED)
EPPlus requires license configuration before first use. Edit these two files and uncomment ONE line in each based on your usage:
Files to edit:
Services/ExcelTemplateGenerator.cs(around line 54)Services/ExcelImporter.cs(around line 40)
Choose ONE option in each file:
// For personal non-commercial use (free):
ExcelPackage.License.SetNonCommercialPersonal("Your Name");
// For non-commercial organization (free):
ExcelPackage.License.SetNonCommercialOrganization("Organization Name");
// For commercial use (requires paid license from https://epplussoftware.com):
ExcelPackage.License.SetCommercial("<Your License Key>");
1. Configure Database
Update appsettings.json with your SQL Server connection string:
"ConnectionStrings": {
"DefaultConnection": "Server=localhost;Database=YourDatabase;Integrated Security=true;TrustServerCertificate=true;"
}
2. Install Database Infrastructure
Execute SqlScripts/CreateBulkOpsInfrastructure.sql against your database.
This creates the ZZ_SlappFramework schema with all necessary metadata tables, validation stored procedures, and scaffolding tools.
3. Scaffold Your First Feature
Run scaffolding stored procedures for your domain tables:
-- Example: Create a bulk insert feature for your "Products" table
EXEC ZZ_SlappFramework.ScaffoldAn_INSERT_Feature
@DomainSchemaName = 'dbo',
@DomainTableName = 'Products'
That's it! Run your app and features appear in the menu automatically.
What You Get
Six data operations scaffolded out-of-the-box:
- insertViaForm - Single-record form entry
- insertViaExcel - Download template → Edit offline → Upload
- insertViaHandsontable - Excel-like grid editing (inline)
- updateViaForm - Edit single records
- updateViaExcel - Select rows → Download → Edit → Upload
- updateViaHandsontable - Bulk edit in grid
All workflows include:
- Automatic constraint validation (your staging table = your validator)
- Foreign key dropdown support
- Rich error messages with collapsible error panels
- Transaction-based processing
- Excel import/export with FK dropdown sheets
The Core Concept
Instead of writing validation code, design proper table constraints:
CREATE TABLE dbo.Products (
ProductName NVARCHAR(100) NOT NULL,
Price DECIMAL(10,2) CHECK (Price > 0),
CategoryID INT NOT NULL
FOREIGN KEY REFERENCES dbo.Categories(CategoryID),
-- Scaffolding generates a staging table to enforce ALL of this automatically
)
SlappFramework bulk-copies your data to the staging table, SQL Server enforces constraints, and the framework collects detailed error messages. Only valid data proceeds to your domain tables.
Result: Zero validation code. Data as valid as your staging table. Guaranteed.
Built For
SlappFramework is designed for:
- SQL Lovers - Developers who prefer SQL programming and want to leverage database capabilities fully
- Enterprise Apps - Internal business applications requiring bulk data management
- Rapid Development - Teams wanting to avoid months of grid/Excel integration work
- Constraint-Driven Design - Projects where the database schema is the source of truth
Technology Stack
Backend: .NET 8.0, C# 12, SQL Server 2019+, Dapper, SqlBulkCopy, EPPlus, CsvHelper
Frontend: ASP.NET Core, Razor Views, Bootstrap 5, Handsontable, AG-Grid, Select2
Distribution: NuGet project template
Commercial Licensing
⚠️ Important: SlappFramework uses Handsontable and EPPlus, which require commercial licenses for production use (~$1,200-1,400/developer/year). Free for non-commercial use. View full licensing details
Project Structure
├── Controllers/
│ ├── HomeController.cs # Main UI controller
│ └── DataController.cs # REST API endpoints
├── Services/
│ ├── BulkOpsHelper.cs # Core validation engine
│ ├── DataService.cs # SQL Server wrapper
│ ├── ExcelTemplateGenerator.cs
│ └── ExcelImporter.cs
├── Models/ # Data models and DTOs
├── Views/Home/ # Razor views
├── wwwroot/ # Static assets
└── SqlScripts/
└── CreateBulkOpsInfrastructure.sql
Next Steps
- Run the app and explore the scaffolded features
- Review
Docs_Misc/SlappFramework-LLM-Context.mdfor architecture details - Scaffold features for your own domain tables
- Customize domain processing sprocs for your business logic
- Configure commercial license keys for Handsontable and EPPlus (if using commercially)
Support & Feedback
- Website: https://slappframework.com
- Issues & Feedback: https://github.com/ChrisHamiltonSystems/SlappFramework-Feedback/issues
- Licenses: https://slappframework.com/licenses.html
-
net8.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated | |
|---|---|---|---|
| 1.0.1 | 195 | 3/5/2026 | |
| 1.0.0 | 479 | 11/8/2025 | |
| 0.2.0-alpha | 329 | 11/8/2025 | |
| 0.1.0-alpha | 408 | 10/28/2025 |