Docker Compose setup that runs the Elasticsearch, Logstash and Kibana (ELK) stack locally with minimal configuration.
macrozheng/mall
A full-stack e-commerce system with a storefront and an admin backend, built on Spring Boot and MyBatis and deployable with Docker.
Open-source alternative to:Shopify
- Stars
- 85,009
- Forks
- 29,830
- Open issues
- 17
- Last commit
- 2 months ago
What is it?
mall is an e-commerce system that includes a customer-facing storefront and an admin back office. It is built on Spring Boot and MyBatis and is designed to be deployed with Docker containers.
The storefront covers a home portal, product recommendations, search, product detail pages, shopping cart, order flow, member center, customer service and a help center. The admin system manages products, orders, members, promotions, operations, content, reports, finance, permissions and settings.
The backend is split into modules for common utilities, MyBatis-generated data access code, Spring Security wrappers, admin APIs, Elasticsearch-based product search, and portal APIs. Supporting components include Redis, RabbitMQ, MongoDB, MySQL, Elasticsearch with the ELK stack, and MinIO for file storage.
Key features
- 01Storefront modules for browsing, search, cart, checkout and member center
- 02Admin modules for products, orders, members, promotions and reports
- 03Spring Security for authentication and authorization
- 04Elasticsearch-powered product search service
- 05Docker and Docker Compose deployment guides, plus Jenkins automation
Use cases
- Learning how a complete e-commerce backend is structured with Spring Boot
- Starting point for building a custom online store with an admin console
- Reference for integrating Elasticsearch search and RabbitMQ into a Java web app
Quick start
- 1
Set up the development environment with JDK 17, MySQL 5.7 and Redis 7.0 (the minimum for mall-admin)
- 2
Follow the README's Docker deployment guide to deploy the project with Docker
Things to know
- The full system needs many services, including Elasticsearch, RabbitMQ, MongoDB and Redis, on top of MySQL.
- The admin and storefront frontends are separate repositories that must be set up on their own.
- The master branch requires JDK 17 and Spring Boot 3.5, while dev-v2 targets JDK 8 and Spring Boot 2.7.
Topics
FAQ
- What is mall?
- A full-stack e-commerce system with a storefront and an admin backend, built on Spring Boot and MyBatis and deployable with Docker. mall is an e-commerce system that includes a customer-facing storefront and an admin back office. It is built on Spring Boot and MyBatis and is designed to be deployed with Docker containers.
- Is mall free to use? What license does it have?
- mall is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is mall still maintained?
- Updated within 6 months. The last commit to mall was on Sep 15, 2026.
- What can I use mall for?
- Learning how a complete e-commerce backend is structured with Spring Boot Starting point for building a custom online store with an admin console Reference for integrating Elasticsearch search and RabbitMQ into a Java web app
- How do I install mall?
- Set up the development environment with JDK 17, MySQL 5.7 and Redis 7.0 (the minimum for mall-admin) Follow the README's Docker deployment guide to deploy the project with Docker
- Where can I get mall?
- The source code and installation instructions are on GitHub: https://github.com/macrozheng/mall
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
All-in-one multi-honeypot platform that runs 20+ honeypots with Elastic Stack dashboards, live attack maps and security tools.
A Spring Boot-based Java rapid-development admin framework with user, role, menu and permission management, plus code generation and scheduled jobs.
A TypeScript e-commerce platform built with GraphQL and React for developers building customizable online stores.
A free, open source PHP-based ecommerce platform for building and running an online store.
A collection of Markdown write-ups that walk through the source code of popular Java frameworks and middleware such as Spring, MyBatis, Netty, Dubbo, Tomcat and Redis.