Simple (No-Layers) Monolith Startup Template

Single-Layer Web App Template

A single-layer web application. Recommended for building an application with a simpler and easy to understand architecture.

This startup template is a simple monolith application that is designed to be a good starting point for small to medium-sized projects. It is a single-layered solution that is easy to understand and maintain. It is a good choice for projects that do not require a complex architecture.

The Solution Structure
  • Single (or minimum number of) .NET projects (.csproj).
  • Code organized by folders/namespaces.
Simple Monolith

Who is For?

In the following conditions, you may consider to use the single-layer solution template:

If your project is small and you don't expect that it will grow by the time. But remember that many projects are thought of as small in the beginning.

If your project is a temporary project and it will be trash in a short time. It can be a POC project or a temporary application for a demo or advertisement campaign.

If you are a single developer or there are only 2–3 developers working on your solution, and these developers are not experienced and are not willing to understand the structure and benefits of a layered application.

Get Started

In the quick start guide, you will learn how to create and run a single layer web application using ABP Studio.

Document Link

Web Application Development Tutorial

This is a single-part quick-start tutorial to build a simple todo application with the ABP.

Document Link

Solution Structure Guide

The document explains the Single Layer solution template in detail. It is a reference document to fully understand the solution and refer to when you have trouble.

Document Link

Multiple UI Options

We love different ways to create the UI. This startup solution provides three UI framework options for your business application.

Multiple UI Options

Multiple Database Options

You have two database provider options (in addition to using both in a single application). Use Entity Framework Core to work with any relational database and optionally use Dapper when you need to write low-level queries for better performance. MongoDB is another option if you need to use a document-based NoSQL database. While these providers are well-integrated, abstracted and pre-configured, you can actually interact with any database system that you can use with .NET.

Multiple Database Options

Authentication

The Single Layer solution template is fully configured for authentication. The template is configured to use the OpenIddict library for authentication. It is configured in a common way for authentication.

The authentication server handles token generation, validation, and user account management (e.g., login, registration). It uses the Account or Account Pro module. The Account Pro* module additionally supports social logins (e.g., Google, Facebook). Social logins can be enabled, disabled, and configured directly from the application's user interface.

See Technical Document

UI Theme

The LeptonX theme is pre-configured for the solution. You can select one of the color palettes (System, Light, or Dark) as default, while the end-user dynamically change it on the fly.

  • 1 Simplified menu.
  • 2 Your favorite pages at your reach.
  • 3 Breadcrumb for seamless switching.
  • 4 Your menu, as you wish.
  • 5 RTL support for your language.
  • 6 Easily arrange your content width.
  • 7 Your colors on your admin dashboard UI.
Explore LeptonX
UI Theme

Multi-Tenancy for your SaaS Business

The solution has been fully configured to support multi-tenant systems. It allows the tenants to share or have their own databases with on-the-fly database creation and migration system.

Multi Tenancy