An advanced starter guide for building Software as a Service business by leveraging Django, Tailwind, htmx, Neon Postgres, Redis, and more.
The goal of this project is to learn how to create a reusable foundation for building SaaS products. When release.
mkdir -p ~/dev/saas
cd ~/dev/saas
git clone https://github.com/peternelson063/sass-platform .
macOS/Linux
python3 --version # should be 3.11 or higher
python3 -m venv venv
source venv/bin/activate
Windows
c:\Python312\python.exe -m venv venv
.\venv\Scripts\activate
# with venv activated
pip install pip --upgrade && pip install -r requirements.txt
cp .env.sample .env
cat .env
Values include:
DJANGO_DEBUG=1
DJANGO_SECRET_KEY=""
DATABASE_URL=""
EMAIL_HOST="smtp.gmail.com"
EMAIL_PORT="587"
EMAIL_USE_TLS=True
EMAIL_USE_SSL=False
EMAIL_HOST_USER=""
EMAIL_HOST_PASSWORD=""
ADMIN_USER_EMAIL=""
STRIPE_SECRET_KEY=""
For dev environment, the sqlite3 db could be used
python -c 'from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())'
or
openssl rand -base64 64
or
python -c 'import secrets; print(secrets.token_urlsafe(64))'
Once you have this value, add update DJANGO_SECRET_KEY
in .env
.
source venv/bin/activate
# or .\venv\Scripts\activate if windows
cd src
python manage.py migrate
python manage.py createsuperuser
python manage.py vendor_pull
python manage.py runserver