| description | Marketplace web application for institutional remote-laboratory access. |
|---|
DecentraLabs Marketplace is the institutional catalogue for discovering, reserving and accessing remote laboratories and FMU simulations. Students, researchers and staff use their institution's identity; providers operate the laboratory infrastructure and publish its availability through the platform.
| If you want to... | Read |
|---|---|
| Use a laboratory as a student, researcher or staff member | Access laboratories |
| Set up your institution as a consumer | Become a consumer and Credits and funding |
| Publish and operate a laboratory | Become a provider |
| Understand reservation states and cancellation | Reservations and cancellations |
| Prepare lab metadata | Marketplace metadata integration |
| Diagnose a failed login, booking or access attempt | Troubleshooting |
- Production users authenticate with institutional SAML SSO. Microsoft Entra
ID/OIDC is implemented on
feature/entra-idand is available to the stable Preview; it becomes a production path when that branch is promoted tomain. - An institution owns the backend and managed wallet that authorize and execute its operations.
- Service credits are internal units used to authorize reservations and are not redeemable for cash.
- Reservations and provider changes are authorized through signed intents and a WebAuthn ceremony in the institutional backend.
- The deployed contract and its ABI are the source of truth for on-chain state. Marketplace consumes the generated ABI in
src/contracts/diamondAbi.json. - Marketplace does not custody a user's personal wallet or expose a private key in the browser.
flowchart LR
Browser[Browser] -->|SAML login / UI| Marketplace[Marketplace\nNext.js]
Marketplace -->|read and intent registration| Diamond[Diamond contract]
Marketplace -->|server-to-server, scoped JWT| Institution[Institutional backend]
Institution -->|managed-wallet transaction| Diamond
Marketplace -->|access authorization| Gateway[Lab Gateway]
Gateway --> Lab[Remote lab or FMU]
The active chain configuration defaults to Sepolia. Configuring another network in a client library is not a production release; the contract address, ABI and deployment validation must be changed together.
Use Node.js 22 and npm 10 or later to run the application locally:
npm ci
npm run devnpm run dev starts Next.js with Turbopack. Configure a development SAML
identity provider, RPC endpoint, contract address and server-side session store
before testing an institutional flow. Do not copy secrets into source files or
NEXT_PUBLIC_* variables.
The complete user-facing map is in SUMMARY.md. The live FAQ, contact page, privacy notice, terms, cookies notice and security page are part of the operational product experience.
For technical integration work, use the linked project documentation from the relevant user guide. The Marketplace repository is not a substitute for the Lab Gateway, canonical backend or Lab-Metadata documentation.
Run the narrowest relevant command first. The normal local baseline is:
npm run lint
npm run test:critical
npm run docs:check
npm run build