Built like an operations tool, shipped as source code
Every module is a real surface over a fully simulated funded-trader domain. Explore what exists today across the console.
Every surface a back-office team works inside
Nine operational modules, each a real list, detail, and workflow surface over seeded demo data — not mockups or invented screenshots.
Operations Dashboard
KPI cards for active traders and accounts, near-breach accounts, pending and needs-review payouts, and open or urgent tickets, with phase, risk, and payout summaries plus live queue previews.
Trader Management
A server-rendered trader directory with search, filters, and pagination, tabbed detail (overview, accounts, payouts, tickets, audit), and create / edit / archive workflows.
Account Lifecycle
Accounts across evaluation, funded, watchlist, and closed states: plan rules, daily snapshots, a transparent risk breakdown, payout eligibility, and audited status transitions.
Account Plans
A catalog of fictional evaluation plans with create, edit, clone, and archive — guarded so a plan still used by demo accounts cannot be removed.
Risk Queue
An illustrative risk-review queue derived from seeded snapshots, with recalculation and acknowledge / escalate / resolve decisions. Demo logic only — not financial advice.
Simulated Payout Reviews
A simulated payout pipeline: approve, reject, mark needs-review, or mark simulated-paid. Every transition is role-gated and writes an audit row. No money moves.
Support Desk
A command-center ticket queue with status, priority, assignment, and threaded notes, including tickets imported from the simulated integration.
Simulated Integration
A Jira-like connector with a “Sync now” action, sync-run history, and imported-ticket tracking. A local mock — no real Jira, OAuth, API keys, or outbound network.
Audit Log
Workspace-scoped audit history for every meaningful state change, surfaced both on a global log and on per-entity timelines.
Operations patterns, wired end to end
Not a CRUD shell with placeholder screens — primary entities have real workflows, role gates, and an audit trail behind every action.
Audited workflows
Every meaningful state change writes a structured audit row through one envelope, surfaced on a global log and per-entity timelines.
Role-gated pipelines
A PropOps role layer — Admin, Risk Manager, Finance Reviewer, Support Agent, Read-Only — over the base ADMIN/USER model, enforced on the server. UI hiding is never the gate.
Simulated external sync
One module pulls work in from a simulated Jira-like connector — sync runs, imported tickets, and audit — so the data reads like a real integration while staying fully local.
Real CRUD coverage
Traders, accounts, and plans ship create / edit / archive; risk, payouts, and support ship credible decision workflows — not read-only stubs.
Server-first architecture
Next.js App Router with Server Components by default, Server Actions for mutations, Zod validation, and a reusable DataTable — small client islands only where needed.
i18n & RTL ready
English and Arabic out of the box, a runtime language switcher, and RTL-safe layouts using theme direction and logical CSS.
Stripe billing foundation
A Free/Pro subscription foundation with checkout, customer portal, webhook verification, and Pro gating — Stripe test-mode, ready to extend.
Unmistakable feedback
Tabbed detail pages, confirm dialogs, and a toast-on-every-mutation flash system, so each action visibly changes state — never a silent save.
Source-code friendly
A single validated env module and Docker-ready, standalone output — clone it, seed it, read it, and extend it as your own starter.
The operational scaffolding, already built
Sidebar, tables, forms, tabs, and action feedback — wired up and consistent across every module.
The operational scaffolding, already built
Responsive operations shell with sidebar, topbar, and breadcrumbs
Reusable DataTable with URL-synced search, filters, and pagination
Native server-action forms with server-side Zod validation
Tabbed detail pages with a per-entity audit timeline
Toast and flash feedback plus confirm dialogs on every mutation
Per-user language, direction, and theme persisted to the database
Server-first architecture you can extend
The patterns are real and documented — swap the simulated domain for real integrations behind the same Server Actions and audit envelope.
Additive REST surface via Route Handlers (/api/v1)
Hashed personal-access-token foundation for headless clients
Stripe webhook handling, verification, and idempotency
Shared Prisma schema, types, and seeded demo data
Practical defaults, enforced on the server
HttpOnly session cookies
Server-validated sessions with strict cookie flags by default.
Server-side guards
Auth and role checks run on the server, never in the client bundle. A direct call to a gated action still returns 403.
Validated env
A single validated env module — no scattered process.env access across the app.
Server-first rendering
Server Components, small client islands, and revalidation over heavy global state.
What is simulated
PropOps Console is a portfolio and source-code demo. The architecture is real and runnable; the funded-trader domain is fully simulated.
No real money movement
“Paid” payouts only set a database timestamp. There are no wires, ACH, cards, crypto, or treasury rails.
No broker or exchange connection
No FIX, broker APIs, order routing, fills, or positions. Traders are records, not connected accounts.
No live market data
No live or delayed quotes, prices, or P&L feeds. Snapshots are seeded end-of-day demo values.
No KYC / AML
No identity verification, document checks, sanctions, or PEP screening. Cookie sessions are the only auth.
Simulated integration
The Jira-like connector reads local mock fixtures. No real Jira, OAuth, API keys, or outbound network.
Seeded demo data
Every trader, account, plan, payout, and ticket is seeded fictional data using @example addresses.
PropOps Console is not a real prop firm, is not affiliated with any prop firm, and is not production-ready regulated trading software. It is shared as source code and a private demo.
A full shift in four steps
The fastest way to evaluate the console is to push real work through it and watch the state and audit trail change.
Scan the dashboard
Sign in and read the workload at a glance — active accounts, near-breach accounts, payouts waiting, and open tickets.
Work the pipelines
Move a payout and a risk item through their role-gated decisions and watch the status, actions, and audit trail update.
Sync the integration
Run the simulated connector to import support tickets, then triage them like any internal ticket.
Inspect the audit trail
Open the audit log — global or per entity — and trace exactly who changed what, when, and from which state.
Want a quick overview of pricing?
See pricingSign in and inspect the workflows
Walk the dashboard, push a payout and a risk item through their pipelines, sync the simulated integration, and read the audit trail — in English or Arabic.