explaingit

dromara/lamp-cloud

5,744JavaAudience · developerComplexity · 4/5Setup · hard

TLDR

Java backend framework for building multi-tenant SaaS platforms, with built-in tenant data isolation strategies, role-based permissions, a visual code generator, and Spring Cloud Alibaba integration.

Mindmap

mindmap
  root((lamp-cloud))
    Multi Tenancy
      Per database
      Per schema
      Shared table
    Features
      Role permissions
      Code generator
      Scheduled jobs
      File storage
    Tech Stack
      Java 17
      Spring Cloud Alibaba
      Spring Boot
    Repo Structure
      lamp-util
      lamp-job
      lamp-cloud
      lamp-web frontend
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Build a multi-tenant SaaS application where each customer gets their own isolated database, schema, or table partition without writing the isolation logic from scratch.

USE CASE 2

Use the visual code generator to produce both backend API and frontend admin page code for a new feature automatically.

USE CASE 3

Set up a unified login gateway and role-based access control system for an enterprise platform using the included permission module.

USE CASE 4

Start a B2B software product on Java 17 using lamp-cloud as the foundation to skip months of boilerplate multi-tenancy work.

Tech stack

JavaSpring Cloud AlibabaSpring BootMyBatis

Getting it running

Difficulty · hard Time to first run · 1day+

README is in Chinese, requires Java 17 and the java17/5.x branch, involves multiple Spring Cloud Alibaba infrastructure components.

In plain English

lamp-cloud is a Java-based backend development framework aimed at teams building multi-tenant software-as-a-service platforms. A multi-tenant platform is one where many separate customers (tenants) share the same application, but each customer's data and access is kept strictly separate from the others. lamp-cloud gives developers a ready-made foundation for this, rather than requiring them to build all the isolation logic from scratch. The framework supports several strategies for keeping tenant data separated. Depending on what level of isolation a project needs, it can put each tenant's data in a separate database, in a separate schema within one database, or use a column in shared tables to tag which tenant each row belongs to. This flexibility lets the same framework serve both small projects that want simple separation and larger platforms that need strict database-level boundaries. Beyond multi-tenancy, the project includes a role-based permission system, a unified login gateway, form validation shared between front and back ends, a visual code generator that produces both backend and frontend code, file storage, email and SMS dispatch, distributed transactions, and scheduled jobs. It is built on the Spring Cloud Alibaba ecosystem, which is a set of Java tools popular in China for building distributed backend systems. The project is organized as a family of related repositories rather than a single codebase. Core utilities live in lamp-util, scheduled job handling lives in lamp-job, and this repository (lamp-cloud) contains the main backend services. A separate front-end project called lamp-web provides the admin interface. The README is written in Chinese and links to a documentation website for setup instructions. New users are directed to the java17/5.x branch, which is the only branch receiving new features. Older branches for Java 8 and earlier versions still receive bug fixes but no new development. The project is open source and described as suitable for both individual learning and as a starting framework for small-to-medium companies.

Copy-paste prompts

Prompt 1
Using lamp-cloud, how do I configure separate-database tenant isolation so each customer's data lives in its own database?
Prompt 2
Show me how to use lamp-cloud's visual code generator to scaffold a new backend module with CRUD endpoints and matching admin frontend pages.
Prompt 3
In lamp-cloud, how do I set up role-based permissions so users within a tenant see only the features they are allowed to access?
Prompt 4
What is the relationship between lamp-util, lamp-job, lamp-cloud, and lamp-web in the lamp-cloud project family, and how do I run them together locally?
Open on GitHub → Explain another repo

← dromara on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.