Deploy Openfront Sports Agents
Opensource Salesforce alternative based on Next.js and Keystone.js
Just deployed
/var/lib/postgresql/data
openfront-sports-agents
Just deployed
Storage
Bucket
Just deployed
Deploy and Host Openfront Sports Agents with Railway
Openfront Sports Agents is a self-hostable back office for athlete representation agencies. Agents track recruiting and representation agreements, playing contracts by year, endorsement deals with deliverables, and the commission and client trust money that follows them. Commission is earned when the athlete is paid, not when a deal is signed.
About Hosting Openfront Sports Agents
This template provisions the application from its GitHub repository, PostgreSQL, and a private native Railway Bucket named Storage. The database starts empty; no demo records or reusable credentials are included. After deployment, open /dashboard/init to create the first admin, then load the complete or basic setup template from the sidebar.
DATABASE_URL references Postgres and the five S3_* variables reference the Storage bucket. Generated per deployment: CRON_SECRET, SESSION_SECRET. Other references: SMTP_STORE_LINK. Defaults: NODE_ENV=production, PUBLIC_SIGNUPS_ALLOWED=false.
Optional and blank until you configure the provider: NEXT_PUBLIC_STRIPE_KEY, SMTP_FROM, SMTP_HOST, SMTP_PASSWORD, SMTP_PORT, SMTP_USER, STRIPE_PUBLISHABLE_KEY, STRIPE_SECRET_KEY, STRIPE_WEBHOOK_SECRET.
The app gets a Railway-generated public domain on port 8080. No custom domains are included.
Admin Dashboard
A Money overview shows receivables, expected 90-day commission, overdue payments, deliverables, and expirations. Staff work from Clients (roster and a nine-tab athlete detail), a Recruiting board, Contracts, Endorsements, Commissions, Trust, Brands and contacts, Tasks, Certifications, Payment providers, and Settings. Permissions are role checkboxes.
Public Site
Published athletes are listed with a brand inquiry form that creates a contact, an interaction, and a follow-up task. Clients look up an invoice by email and invoice number and pay it by card through Stripe.
Contracts & Endorsements
- Representation agreements with a union fee cap and one active agreement per athlete and scope.
- Playing contracts with contract years, incentives, and generated payment schedules.
- Endorsement deals with dated deliverables and an exclusivity conflict check.
Commissions & Trust
- Commission accrues when the athlete is paid, using integer cents and basis points.
- Commission invoices with snapshot lines, an append-only commission ledger with one-time reversals, and agent splits.
- Client trust accounts with an audited entry ledger.
- Refunds above an agency threshold require approval.
Common Use Cases
- Contracts & Endorsements
- Commissions & Trust
- Recruiting & Client Management
Dependencies for Openfront Sports Agents Hosting
The app needs a PostgreSQL database and S3-compatible object storage. Both are provisioned by this template.
Deployment Dependencies
- openfront-sports-agents on GitHub
- Full README and onboarding instructions
- Documentation
- Railway Buckets
Implementation Details
Next.js and Keystone 6 with a GraphQL API, Prisma, and PostgreSQL. Migrations run at start (npm run migrate && next start). Payments, email, and other external providers need their own operator configuration; this template does not activate them. For card payments, point a Stripe webhook at /api/integrations/payment/pp_stripe_stripe/webhook.
Why Deploy Openfront Sports Agents on Railway?
Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.
By deploying Openfront Sports Agents on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.
Template Content
openfront-sports-agents
openshiporg/openfront-sports-agentsStorage
Bucket