Lightweight .NET/Angular/PrimeNG full-stack starter kit for building modern Single Page Applications (SPA) with enterprise-grade authentication and identity management out of the box.
LightNap provides a complete foundation for building secure, scalable web applications with minimal setup. Perfect for developers who want to skip the boilerplate and start building features immediately.
π Documentation | π₯ YouTube Channel | π Live Demo
- ASP.NET Core Web API - RESTful API with best practices
- ASP.NET Identity - Complete authentication & authorization framework
- JWT Token Management - Secure token-based authentication with refresh tokens
- Rate Limiting - Built-in API rate limiting with configurable policies per endpoint
- Multiple Database Providers - SQL Server, SQLite, and In-Memory options
- Redis Caching - Distributed caching with hybrid cache support
- SignalR - Real-time communication for notifications and live updates
- Email Integration - Templated email system for authentication flows
- User Management - Full CRUD operations for users, roles, and permissions
- Device Tracking - Monitor and manage user sessions across devices
- Maintenance Service - Background task processing with Azure WebJobs support
- Angular - Latest Angular framework with standalone components
- PrimeNG - Comprehensive UI component library (70+ components)
- Tailwind CSS - Utility-first CSS framework for rapid styling
- Progressive Web App (PWA) - Installable with service worker for asset caching (good starting point for offline support)
- Content Management System (CMS) - Basic support for zones and pages with permissions so users can update static content without rebuilds
- In-App Notifications - Real-time notification system
- Form Validation - Built-in validation with custom error handling
- Route Guards - Role-based access control at the routing level
- Code Scaffolding - Generate complete CRUD infrastructure from entity classes
- Backend API controllers and services
- Frontend components and routing
- Form validation and data models
- All in seconds!
- C#/TypeScript - Type safety across the full stack
- Comprehensive Testing - Unit test setup for backend and frontend services
- Docker Support - Containerization ready with Dockerfiles
- CI/CD Ready - GitHub Actions workflows included
src/
βββ lightnap-ng/ # Angular frontend (PrimeNG + Tailwind)
βββ LightNap.WebApi/ # ASP.NET Core Web API
βββ LightNap.Core/ # Business logic & data access
βββ LightNap.DataProviders.Sqlite/ # SQLite data provider
βββ LightNap.DataProviders.SqlServer/ # SQL Server data provider
βββ LightNap.MaintenanceService/ # Background tasks web job
βββ LightNap.Core.Tests/ # Backend init tests
βββ Scaffolding/ # Code generation templates
- .NET 10 SDK or later
- Node.js (LTS version recommended)
git clone https://github.com/SharpLogic/LightNap.git
cd LightNapcd src/LightNap.WebApi
dotnet runThe API will be available at https://localhost:7266 (or check console output).
Note: The backend runs with a SQLite database by default and logs emails to the console for development. See Application Configuration to configure SQL Server, email providers, rate limiting, caching, or other settings.
In a new terminal:
cd src/lightnap-ng
npm install
npm startThe application will open at http://localhost:4200.
The application comes with three pre-seeded user accounts for testing:
| Role | Password | Description | |
|---|---|---|---|
| Administrator | Admin@lightnap.azurewebsites.net |
P@ssw0rd |
Full access to manage users, roles, and system settings. |
| Content Editor | ContentEditor@lightnap.azurewebsites.net |
P@ssw0rd |
Can manage CMS aspects of the site. |
| Regular User | RegularUser@lightnap.azurewebsites.net |
P@ssw0rd |
Basic user with limited access for standard application features. |
For detailed guides on configuration, customization, and advanced features, visit the official documentation:
- Application Configuration - Database providers, email setup, JWT configuration, rate limiting, and caching
- Adding Entities - Using the scaffolding system
- Authentication Concepts - Understanding JWT, roles, and permissions
- Content Management - Working with dynamic content
- Common Scenarios - Step-by-step guides for extending functionality
Comprehensive documentation is available at lightnap.sharplogic.com:
- Getting Started - Setup and configuration guides
- Application Configuration - Complete configuration reference including database providers, authentication, rate limiting, caching, and email setup
- Common Scenarios - Step-by-step tutorials for adding features
- Concepts - Architecture and design decisions
- API Reference - Complete endpoint documentation
- GitHub Actions - CI/CD workflow guides
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Check out the LightNap YouTube Channel for video tutorials, feature demonstrations, and development tips.
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with ASP.NET Core
- Frontend powered by Angular
- UI components by PrimeNG
- Styled with Tailwind CSS
- π Documentation: lightnap.sharplogic.com
- π Issues: GitHub Issues
- π¬ Discussions: GitHub Discussions
- π₯ YouTube: @LightNap
Made with β€οΈ by SharpLogic