Overview
JarvisTrade is a fullstack platform for selling trading software, managing custom freelance development requests, and delivering protected digital products to customers. The system brings together a public storefront, authenticated customer accounts, admin operations, payment verification, product licensing, and project collaboration workflows.
The platform is built for a trading software business rather than a generic ecommerce catalog. Products can represent MetaTrader tools, indicators, expert advisors, scripts, documents, and rental or trial-based software. Customers can buy products, request custom trading systems, receive invoices and deliverables, manage licenses, and track project progress from their account dashboard.
Architecture
Four major surfaces:
- FastAPI backend - core API for authentication, products, orders, payments, licenses, free trials, project requests, messaging, notifications, blog posts, reviews, exchange rates, uploads, and admin workflows
- React customer app - marketplace, cart, checkout, wishlist, dashboard, downloads, project tracking, notifications, settings, support pages, and protected admin views
- Next.js SEO frontend - public product, pricing, blog, developer, checkout, account, and tool pages optimized for static deployment and search visibility
- Operations layer - database migrations, Docker and Nginx deployment files, cPanel export tooling, payment webhook handlers, file storage helpers, email templates, and administrative runbooks
Implementation
The backend exposes a large FastAPI surface with JWT authentication and role-based access for users and admins. SQLAlchemy models and Pydantic schemas keep the commerce, project, license, notification, blog, and user-management flows structured across SQLite/MySQL development and deployment environments.
The commerce flow supports product browsing, featured products, categories, product reviews, cart checkout, Paystack payments, NOWPayments crypto IPNs, transaction verification, order management, and secure digital downloads. Download access is tied to purchase state, token generation, and product/license ownership instead of exposing uploaded files directly.
JarvisTrade also includes a project request system for freelance work. Users can submit custom development requests with file attachments, then follow the project lifecycle through status updates, progress history, invoices, shared files, and threaded messages. Admin users can update progress, costs, payments, invoices, deliverables, and responses from dedicated management screens.
Marketplace And Delivery
The marketplace is tailored to trading products rather than ordinary digital downloads. Product records support platform metadata, categories, images, pricing, original pricing, featured status, trials, rentals, requirements, changelog content, and downloadable artifacts.
Licensing is handled as a first-class part of the delivery flow. Purchased products can generate license records and activation data, users can view activations from their dashboard, and administrators can inspect or update licenses. The system also supports free-trial claim checks, binding trial claims to accounts, and generating trial download tokens when a product allows it.
Project Management
The freelance workflow turns a simple project request form into a managed client portal. A submitted request becomes a trackable project with status, progress percentage, platform requirements, budget details, files, invoices, and messages.
Users see a project dashboard with progress and communication history, while admins get project tables, filters, stats, response tools, invoice uploads, and file-sharing controls. This gives custom trading software clients a clearer experience than email-only project management while keeping all delivery context connected to their account.
Reliability
JarvisTrade separates public browsing, authenticated account workflows, and admin-only operations with protected routes and backend authorization checks. Payment state is verified through explicit transaction endpoints and webhook handlers, while download routes validate ownership before returning software files.
The project includes migration scripts, deployment guides, production security notes, smoke tests, and implementation checklists for payment, entitlement, licensing, order management, and project-management features. That supporting tooling matters because the app handles money, software access, client files, and license activation state, not just static content.



