LegalDocs Pro

Getting Started Guide · v1.0

Overview

LegalDocs Pro is a professional legal document management platform built with Django 5.2+, Tailwind CSS, and Alpine.js. This guide covers installation, configuration, and deployment.

Requirements

  • Python 3.12+
  • PostgreSQL 15+
  • Redis 7+
  • Docker & Docker Compose (recommended)

1. Extract and configure

unzip LegalDocs_Pro_v1.0.zip
cd legaldocs_pro
cp .env.example .env

Edit .env with your settings (database password, secret key, Stripe keys, etc.)

2. Start the stack

docker compose up -d

This starts all services: Django, PostgreSQL, Redis, Celery, Celery Beat, and Nginx.

3. Run migrations and create admin

docker compose exec web python manage.py migrate
docker compose exec web python manage.py createsuperuser

4. Access the application

  • Application: http://localhost
  • Admin panel: http://localhost/admin/

Development with Docker

For local development with hot-reload:

docker compose -f docker-compose.dev.yml up -d

Traditional Setup (Without Docker)

1. Create virtual environment

python -m venv venv
source venv/bin/activate  # Linux/Mac
venv\Scripts\activate     # Windows

2. Install dependencies

pip install -r requirements/base.txt

3. Configure environment

cp .env.example .env

Key settings to configure:
- SECRET_KEY — Generate a unique secret key
- DATABASE_URL — PostgreSQL connection string
- REDIS_URL — Redis connection for Celery
- STRIPE_* — Stripe API keys for billing
- DOCUSIGN_* — DocuSign integration keys (optional)

4. Run migrations and start

python manage.py migrate
python manage.py createsuperuser
python manage.py runserver

CI/CD with GitHub Actions

The included .github/workflows/ci-cd.yml provides a 3-stage pipeline:

  1. Test — Runs linting, migrations check, and tests on every push/PR
  2. Build — Builds and verifies the Docker image
  3. Deploy — Deploys to production via SSH (main branch only)

Setup

Add these secrets in your GitHub repository settings:

Secret Description
SERVER_HOST Your server IP or hostname
SERVER_USER SSH username (e.g., root)
SSH_PRIVATE_KEY SSH private key for deployment
APP_DIR Path to the app on the server

The pipeline triggers automatically on pushes to main and on pull requests.

Project Structure

The project contains 15 Django apps:

App Description
accounts User authentication, registration, profiles
tenants Multi-tenant organization management
templates_engine Document template creation and management
documents Document generation, editing, versioning
signatures DocuSign and HelloSign e-signature integration
matters Legal matter/case management
billing Stripe subscription billing and plans
analytics Dashboard and usage analytics
pages Static pages (terms, privacy policy)
portal Client portal for external document access
search Full-text search across documents
auditlog Activity and audit logging
help Help center and documentation
notifications In-app and email notifications
landing Public-facing landing pages

Configuration

Settings Files

  • config/settings/base.py — Shared settings
  • config/settings/development.py — Development overrides
  • config/settings/production.py — Production settings
  • config/settings/staging.py — Staging settings

Multi-Language Support

LegalDocs Pro supports 4 languages out of the box:
- English (default)
- Dutch (Nederlands)
- German (Deutsch)
- French (Français)

White-Label Branding

Configure branding via environment variables:
- SITE_NAME — Application name
- SITE_TAGLINE — Homepage tagline
- SITE_DESCRIPTION — Meta description
- SUPPORT_EMAIL — Support email address

Subscription Plans

Three built-in plans:
- Starter — 50 documents, 5 users, 500MB storage
- Professional — 500 documents, 25 users, 5GB storage
- Enterprise — Unlimited everything

Docker Architecture

docker-compose.yml
├─ web          Django + Gunicorn (port 8000)
├─ db           PostgreSQL 15
├─ redis        Redis 7
├─ celery       Celery worker
├─ celery-beat  Celery Beat scheduler
└─ nginx        Nginx reverse proxy (ports 80/443)

API

REST API (v1) with token authentication:

  • /api/v1/documents/ — Document CRUD
  • /api/v1/templates/ — Template management
  • /api/v1/matters/ — Matter management
  • /api/v1/signatures/ — Signature requests
  • /api/v1/billing/ — Billing and subscriptions
  • /api/v1/accounts/ — User management
  • /api/v1/search/ — Search API

Deployment

Production Checklist

  1. Set DEBUG=False
  2. Configure a strong SECRET_KEY
  3. Set up PostgreSQL and Redis
  4. Configure email (SMTP)
  5. Set up Stripe webhooks
  6. Enable HTTPS with proper SSL
  7. Configure static file serving (WhiteNoise included)
  8. Set up Celery workers and beat scheduler

Running with Gunicorn (without Docker)

gunicorn config.wsgi:application --bind 0.0.0.0:8000 --workers 4

Celery Workers (without Docker)

celery -A config worker -l info
celery -A config beat -l info --scheduler django_celery_beat.schedulers:DatabaseScheduler

License

LegalDocs Pro is distributed under the MIT License. See LICENSE.md for details.

Support

For questions and support, visit the DjangoZen Support page.

Info

Product: LegalDocs Pro

Type: SaaS Application

Version: 1.0

Updated: Feb 25, 2026


All Documentation