PupaMVCF is a lightweight and flexible web framework built on top of .NET 10 and C# 14.
It is designed to simplify the development of modern web applications using the Model-View-Controller (MVC) pattern.
- ⚡ simplicity
- 🧩 extensibility
- 🚀 performance
- Changed .NET version .net8.0 -> .net10.0
- Extended PupaMVCF.Framework.Tests with GET, POST requests and views testing
- Fixed validator: character substitution in
forcycle (i -> y)
- Pipe-based request body reading and response writing via
System.IO.Pipelines - Form data reading support with typed
GetFormField<T> - Extended
Redirectoverloads with URI validation - Full validation system: modules for email, string/number range, required fields, Cloudflare Captcha
ValidFromRequest<T>— validates model directly from request, returnsOption<T>Option<T>improvements:implicit operator bool, singletonFail,Out(out T)pattern- Extended session config: expiry, SameSite, custom cookie name
- Added
HttpsEnable,Domain,StaticPrefixconfig options - Middleware can now be declared directly on
[ControllerHandler]attribute - CI: web template now published with a separate NuGet token
- 🌐 Cross-platform support
- 🧱 MVC architecture
- 📧 gRPC support
- 🧩 Middleware (in progress)
- 🎨 Views system
- 💉 Dependency Injection
- ⚙️ Configuration system
- 📊 Logging
- 📦 Models & Controllers
- 🧭 Routing
- ✅ Validations (in progress)
- 🚨 Error handling
- 🔐 Security:
- ⚡ XSS protection
- ⚡ SQL Injection protection
- 🔄 Daemon processing
- 🧩 Microservices ready
- 🚀 Kestrel integration
- ⚡ Cookies (Kestrel-based)
- ⚡ Sessions (Kestrel-based)
- ⚡ Pipe writer/reader
dotnet install new PupaMVCF.Web.Template
mkdir SolutionName
cd ./SolutionName
dotnet new sln ./
mkdir ProjectName
cd ./ProjectName
dotnet new pupamvcf-web
cd ..
dotnet sln add ./ProjectName
cd ./ProjectName
dotnet run