A Stage 1 proof of concept for a tokenization platform inspired by issuer, investor, compliance, and wallet workflows.
The app is intentionally structured as a frontend product shell with a lightweight API boundary. Pages call feature-level API modules, the feature APIs read and write the demo store, and the store persists to localStorage. That keeps the demo interactive today and leaves a clean swap point for a real backend in Stage 2.
npm install
npm run devUseful checks:
npm run build
npm run lint
npm testThis repo includes a GitHub Actions workflow at .github/workflows/pages.yml.
- Create an empty GitHub repository.
- Push this project to the repo's
mainbranch. - In GitHub, open Settings -> Pages and set the source to GitHub Actions if it is not already selected.
- The workflow builds the app, copies
index.htmlto404.htmlfor SPA route fallback, and deploysdist.
For project Pages URLs like https://username.github.io/tokenization-boilerplate/, the workflow builds with BASE_PATH set to the repository name so Vite assets and React Router links resolve correctly.
- Open the issuer dashboard and show the KPI cards, charts, active offerings table, search, status filter, and remove action.
- Use Connect wallet to open the simulated connector modal, then connect MetaMask, WalletConnect, or Coinbase Wallet.
- Move to Tokenize, complete the asset wizard, review the draft, and submit it.
- Return to Issuer and show that the new asset appears immediately with
in_reviewcompliance status. - Open Investors, choose the new offering, submit an investment order, and show the simulated transaction lifecycle.
- Return to Issuer and show that raised amount and investor count changed.
- Open Compliance, approve the new asset onboarding review, and show the asset status update.
- Use Reset in the header to restore the seeded demo state.
- Issuer dashboard with realistic KPIs, Recharts visualizations, search, filters, and offering removal.
- Multi-step tokenization wizard with validation, review, and draft submission.
- Investor portal with persistent subscription updates.
- Compliance queue with persistent review decisions.
- Simulated wallet connection, chain switching, and transaction states.
- Local persistent demo store under
tokenization-boilerplate-demo-store-v1. - Tests for route smoke coverage, wallet modal rendering, wizard validation, and the core data flow.
This is not connected to a real blockchain, KYC provider, document store, or payment rail. Wallet behavior is simulated so the CEO demo can show the intended flow without installing wallet dependencies or requiring testnet funds.
- Replace the local demo store with a Cloudflare Worker API and D1 persistence.
- Add authentication and role-based access for issuer, investor, and compliance users.
- Replace the simulated wallet layer with wagmi/RainbowKit or WalletConnect.
- Add real document upload storage, audit logs, and lifecycle events.
- Integrate KYC/KYB provider callbacks and investor accreditation checks.
- Introduce smart-contract adapters behind the existing feature API boundaries.
- Deploy the static app to Cloudflare Pages or Vercel once the target account/project is selected.