Skip to content

Latest commit

 

History

12 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Software Distribution Platform

A production-oriented monorepo for selling, licensing, updating, and securely distributing desktop software.

What Is Included

  • Public software store built with Next.js, TypeScript, and Tailwind CSS.
  • Customer portal for licenses, downloads, devices, billing, invoices, support, and notifications.
  • Admin panel for products, builds, release workflows, customers, payments, licenses, devices, support, legal content, analytics, audit logs, and settings.
  • FastAPI backend with PostgreSQL, Redis, Celery, Alembic, and MinIO-compatible storage.
  • License server with device binding, entitlements, feature flags, offline tokens, policy rules, abuse detection, and asymmetric signing.
  • Update server with signed manifests, release rollback, compatibility checks, channels, checksums, and platform-specific builds.
  • Razorpay and PayPal payment architecture with strict webhook verification and invoice records.
  • Documentation for setup, deployment, desktop integration, payments, backups, and roadmap.

Quick Start

  1. Copy .env.example to .env and replace secrets before real use.
  2. Start services:
docker compose up --build
  1. Run migrations and seed data:
docker compose exec backend alembic upgrade head
docker compose exec backend python -m app.seed
  1. Open:

If the frontend ever looks unstyled after local builds, restart the frontend container. Docker Compose keeps the container .next cache separate from the host to avoid Windows/Linux build-cache conflicts.

Default seed accounts:

  • Admin: admin@example.com / AdminPass123!
  • Customer: customer@example.com / CustomerPass123!

Verification

With Docker running and seed data loaded:

cd frontend
npm run qa:api
npm run qa:browser
npm run build

cd ../backend
python -B -m pytest tests -p no:cacheprovider

The browser QA command launches Microsoft Edge/Chromium headlessly, visits public, customer, and admin routes, and fails on HTTP errors, missing stylesheets, console warnings/errors, page errors, or failed asset requests.

Milestone Notes

Documentation should be updated with every implementation milestone. Git commits should be made after each meaningful update with clear messages.

See docs/ for detailed architecture and operations guides. See docs/strict-completion-pass.md for the latest verified flow-completion report and remaining production-launch gaps.

About

Full-stack platform for software sales, licensing, secure downloads, updates, payments, and administration.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages