Modern, full-featured e-commerce framework built with AdonisJS 7 + InertiaJS + React 19
Features โข Quick Start โข Documentation โข Contributing
- ๐๏ธ Product catalog with advanced filtering and search
- ๐จ Product variants (Shopify-style options: size, color, etc.)
- ๐ Shopping cart with discount codes
- ๐ณ Multi-step checkout process
- ๐ค Customer accounts & authentication
- ๐ฆ Order history and tracking
- โค๏ธ Wishlist functionality
- โญ Product reviews and ratings
- ๐ Full-text search with filters
- ๐ Dashboard with real-time analytics
- ๐ฆ Product management (CRUD, variants, images, bulk actions)
- ๐งพ Order management (status, fulfillment, refunds, timeline)
- ๐ฅ Customer management with order history
- ๐ Category management (hierarchical tree)
- ๐ท๏ธ Discount code management (percentage, fixed, free shipping)
- ๐ Inventory tracking with low stock alerts
- โ๏ธ Store settings (general, tax, shipping, SEO)
- โก AdonisJS 7 with TypeScript - Full-featured backend framework
- โ๏ธ React 19 + InertiaJS - SPA experience with SSR support
- ๐จ Tailwind CSS v4 - Modern utility-first styling
- ๐๏ธ PostgreSQL 16 - Robust database with JSONB support
- โก Redis 7 - Caching, sessions, and queue backend
- ๐ณ Docker - Development and production ready
- ๐งช Puppeteer - Comprehensive E2E test suite
- ๐ Multi-tenant - Multiple stores on single installation
- ๐ Multi-language - i18n with locale detection
- ๐ฑ Multi-currency - Currency conversion with exchange rates
- ๐ก Event-driven - Async event processing for side effects
# Using npx (recommended)
npx create-adoniscommerce my-store
# Using pnpm
pnpm create adoniscommerce my-store
# Using yarn
yarn create adoniscommerce my-storenpx create-adoniscommerce my-store --docker # Include Docker setup
npx create-adoniscommerce my-store --pnpm # Use pnpm (default)
npx create-adoniscommerce my-store --npm # Use npm
npx create-adoniscommerce my-store --no-git # Skip git init
npx create-adoniscommerce my-store --no-install # Skip dependency installationcd my-store
# With Docker (recommended)
make docker-dev
make docker-db-reset
# Without Docker
pnpm install
pnpm dev| Service | URL |
|---|---|
| Storefront | http://localhost:3333 |
| Admin Panel | http://localhost:3333/admin |
| Adminer (DB) | http://localhost:8080 |
| Redis Commander | http://localhost:8081 |
| MailHog | http://localhost:8025 |
- Email: admin@example.com
- Password: admin123
- john.doe@example.com / password123
- jane.smith@example.com / password123
- bob.wilson@example.com / password123
-
WELCOME10- 10% off (min $50) -
SAVE20- $20 off (min $100) -
FREESHIP- Free shipping (min $75)
my-store/
โโโ app/
โ โโโ controllers/
โ โ โโโ admin/ # Admin panel controllers (10)
โ โ โโโ storefront/ # Storefront controllers (5)
โ โโโ models/ # Lucid ORM models (40+)
โ โโโ services/ # Business logic layer (11)
โ โโโ validators/ # VineJS validators (8)
โ โโโ middleware/ # HTTP middleware (7)
โ โโโ events/ # Event definitions
โ โโโ listeners/ # Event listeners
โโโ config/ # AdonisJS configuration
โ โโโ commerce.ts # E-commerce settings
โ โโโ database.ts
โ โโโ redis.ts
โโโ database/
โ โโโ migrations/ # 55 database migrations
โ โโโ seeders/ # Database seeders
โโโ docker/ # Docker configuration
โโโ inertia/
โ โโโ components/ # React components
โ โ โโโ admin/ # Admin UI components
โ โ โโโ storefront/ # Storefront UI components
โ โ โโโ shared/ # Shared components
โ โโโ lib/ # Utilities
โ โโโ pages/ # React pages
โ โโโ admin/ # Admin panel (10+ pages)
โ โโโ storefront/ # Storefront (10+ pages)
โโโ tests/
โ โโโ e2e/ # Puppeteer E2E tests (6 suites)
โโโ docker-compose.yml # Docker development stack
โโโ Dockerfile # Production build
โโโ Makefile # Convenience commands
| Category | Technology |
|---|---|
| Backend | AdonisJS 7 (Node.js) |
| Frontend | React 19 + InertiaJS 4 |
| Database | PostgreSQL 16+ |
| Cache/Session | Redis 7+ |
| Styling | Tailwind CSS v4 |
| ORM | Lucid ORM 22 |
| Validation | VineJS 4 |
| Build Tool | Vite 7 |
| Testing | Japa 5 + Puppeteer |
| Package Manager | pnpm 9+ |
# Development
make docker-dev # Start development environment
make docker-dev-tools # Start with admin tools
make docker-stop # Stop all containers
make docker-logs # View app logs
make docker-shell # Open shell in container
# Database
make docker-db-migrate # Run migrations
make docker-db-seed # Seed database
make docker-db-reset # Fresh database with seeds
# Cleanup
make docker-clean # Remove all containers and volumes# Unit tests
pnpm test
# E2E tests (headless)
pnpm test:e2e
# E2E tests (with browser)
pnpm test:e2e:headed
# E2E tests (debug mode - slow motion)
pnpm test:e2e:debug55+ tables organized by domain:
- Core: stores, settings, admins, roles, permissions
- Catalog: products, variants, categories, tags, attributes, collections
- Sales: carts, orders, order_items, transactions, fulfillments, refunds
- Customers: customers, addresses, wishlists, reviews
- Pricing: discounts, tax_rates, tax_classes
- Shipping: shipping_zones, shipping_methods
- Content: pages, menus, banners
- System: notifications, webhooks, analytics, locales, currencies
Contributions are welcome! Please read our Contributing Guide for details.
# Clone the repository
git clone https://github.com/haliltoma/adonisjs-ecommerce-core.git
cd adonisjs-ecommerce-core
# Install dependencies
pnpm install
# Build CLI
pnpm build:cli
# Run template in development
pnpm dev# Build and publish
pnpm publish:cli
# Version bump
pnpm version:patch # 1.0.0 -> 1.0.1
pnpm version:minor # 1.0.0 -> 1.1.0
pnpm version:major # 1.0.0 -> 2.0.0adonisjs-ecommerce-core/
โโโ packages/
โ โโโ create-adoniscommerce/ # CLI tool (npm package)
โโโ templates/
โ โโโ default/ # Default project template
โโโ docs/ # Documentation
โโโ package.json # Root workspace
โโโ pnpm-workspace.yaml
MIT License - see LICENSE for details.
Inspired by:
- MedusaJS - Modular backend architecture
- Shopify - Product variant structure, admin UX
- Bagisto - Open-source e-commerce features
Made with โค๏ธ by the AdonisCommerce Team