Skip to content

app-generator/rocket-ecommerce

Repository files navigation

Rocket Icon

DjangoTailwindCSSStripeAnalyticsDockerCI/CDLifetime UpdatesUnlimited Projects

Once authenticated, the ADMIN (superuser) can import the products from Stripe and customize each one locally by adding properties like Images, Tags, Discount, .. etc.

The product comes with Docker and CI/CD Support



Rocket eCommerce - Django Starter styled with Tailwind and Flowbite.

Affordable, actively supported eComemrce solution that requires minimal configuration - Buy License


👉 Supercharge your eCommerce App instantly, launch faster, make $

Login users, process payments and send emails at lightspeed. Spend your time building your startup, not integrating APIs. Rocket eCommerce provides you with the boilerplate code you need to launch, FAST.

👉 Rocket your startup in days, not weeks

The Django boilerplate has all you need to build your SaaS, Analytics tool, or any other type of Web App. From idea to production in 5 minutes.

👉 48+ hours of headaches

  • 1 hrs to set up the project
  • 2 hrs integrate tooling
  • 2 hrs to handle Stripe
  • 1 hrs for Docker
  • ∞ hrs overthinking...
  • Free Support via Email & Discord

Features

Status Item info
Stack Django, Tailwind, React
Payments Stripe
Categories YES
Tags YES
Checkout YES
Discounts Page YES
Products Import Stripe
Products Local Customization YES
Analitycs Weekly, Monthly, Year Sales
Transactions Tracking YES
Docker YES
CI/CD Render
Active versioning and support AppSeed
AWS, DO, Azure Deploy Assistance DeployPRO

Manual Build

👉 Download code (public access)

$ git clone https://github.com/app-generator/rocket-ecommerce.git
$ cd rocket-ecommerce

👉 Create .env from env.sample

The most important, are the Stripe Keys STRIPE_SECRET_KEY, STRIPE_PUBLISHABLE_KEY that will connect your Stripe account with the APP.

DEBUG=True

SECRET_KEY=<STRONG_KEY_HERE>

DEMO_MODE=True

STRIPE_SECRET_KEY=<YOUR_KEY_HERE>
STRIPE_PUBLISHABLE_KEY=<YOUR_KEY_HERE>

EMAIL_HOST=smtp.gmail.com
EMAIL_PORT=587
EMAIL_USE_TLS=True
EMAIL_HOST_USER=
EMAIL_HOST_PASSWORD=

👉 Install Django modules via VENV

$ virtualenv env
$ source env/bin/activate
$ pip install -r requirements.txt

👉 Install Tailwind/Flowbite (separate terminal)

$ npm install
$ npm run dev        

👉 Migrate DB

$ python manage.py makemigrations
$ python manage.py migrate

👉 Seed DB

$ python manage.py seed_tags

👉 Create Superuser & Start the APP

$ python manage.py createsuperuser # create the admin
$ python manage.py runserver       # start the project

Start With Docker

👉 Download code (public access)

$ git clone https://github.com/app-generator/rocket-ecommerce.git
$ cd rocket-ecommerce

👉 Start with Docker Compose

$ docker-compose up --build 

Visit the app in the browser localhost:5085.


Use MySql

By default, the starter uses SQLite for persistence. In order to use MySql, here are the steps:

  • Start the MySql Server
  • Create a new DataBase
  • Create a new user with full privileges over the database
  • Install the MySql Python Driver (used by Django to connect)
    • $ pip install mysqlclient
  • Edit the .env with the SQL Driver Information & DB Credentials
DB_ENGINE=mysql
DB_HOST=localhost
DB_NAME=<DB_NAME_HERE>
DB_USERNAME=<DB_USER_HERE>
DB_PASS=<DB_PASS_HERE>
DB_PORT=3306

Once the above settings are done, run the migration & create tables:

$ python manage.py makemigrations
$ python manage.py migrate

Production Build

For issues, contact support (eMail & Discord)

To use the starter in production mode, here are the steps:

  • Set DEBUG=False in .env
  • Execute collectstatic command
    • $ python manage.py collectstatic --no-input

As a model, feel free to take a look at build.sh, the file executed by the CI/CD flow for Render.


Deploy on Render

At this point, the product should be LIVE.


Codebase

< PROJECT ROOT >
   |
   |-- core/                 # Project Settings 
   |    |-- settings.py 
   |    |-- wsgi.py     
   |    |-- urls.py     
   |
   |-- home/                 # Presentation app 
   |    |-- views.py         # serve the HOMEpage  
   |    |-- urls.py     
   |    |-- models.py
   |
   |-- apps/                 # Utility Apps 
   |    |-- common/          # defines models & helpers
   |    |    |-- models.py   
   |    |    |-- util.py 
   |    |-- users            # Handles Authentication 
   |    |-- api              # DRF managed API
   |    |-- charts           # Showcase Different Charts
   |    |-- tables           # Implements DataTables
   |    |-- tasks            # Celery, async processing
   |
   |-- templates/            # UI templates 
   |-- static/               # Tailwind/Flowbite 
   |    |-- src/             # 
   |         |-- input.css   # CSS Styling
   |
   |-- Dockerfile            # Docker
   |-- docker-compose.yml    # Docker 
   |
   |-- render.yml            # CI/CD for Render
   |-- build.sh              # CI/CD for Render 
   |
   |-- manage.py             # Django Entry-Point
   |-- requirements.txt      # dependencies
   |-- .env                  # ENV File
   |
   |-- *************************************************      

License

EULA License



Rocket eCommerce - eCommerce Starter powered by Django and Tailwind/Flowbite.