A React dashboard for working with a local MetaCall FaaS server.
It already covers the main developer flow: sign in, inspect deployments, deploy from a ZIP or repository, open logs, test exposed functions, and manage a few local account settings. Some parts are production-ready in shape, while others are still demo or local-only.
- React
- TypeScript
- Vite
- Tailwind CSS v4
- React Router
- Axios
- JSZip
- Vitest
- Playwright
Dashboard/
├── src/
│ ├── app/ # app bootstrap, providers, router, env config
│ ├── features/ # feature-first pages, hooks, and components
│ ├── lib/ # API utilities
│ ├── shared/ # layout, UI, types, constants, errors
│ └── tests/ # unit tests
├── tests/ # Playwright E2E + shared testing modules
│ ├── e2e/ # test specs (auth, deployments, logs, smoke)
│ ├── pages/ # page objects
│ ├── fixtures/ # shared fixtures
│ ├── utils/ # test utilities
│ ├── mocks/ # API mocks and mock data
│ ├── storage/ # storage state files
│ └── global/ # global setup/teardown
├── public/ # static files
└── TEST_README.md # extra testing notes
- Node.js > 20
- npm > 10
- A running MetaCall FaaS backend, usually at
http://localhost:9000
cd Dashboard
npm installCreate a local env file from the example:
cp .env.example .envExample:
VITE_FAAS_URL=http://localhost:9000
VITE_FAAS_TOKEN=faas_tokenNotes:
- The app currently authenticates normal sessions through login/signup and stores the token in
localStorage. VITE_FAAS_TOKENstill exists in config, but it is not the main auth path for the current client flow.
npm run devThe Vite app starts at http://localhost:5173 by default.
npm run dev
npm run build
npm run preview
npm run lint
npm run lint:fix
npm run format
npm run format:check
npm run typecheck
npm run unit
npm run unit:watch
npm run unit:coverage
npm run test
npm run test:smokenpm run unitruns the Vitest suitenpm run test:smokeruns the Playwright smoke testsnpm run testruns the full Playwright suite
Playwright uses its own local dev server on port 5173.
- The repo currently contains local build and test artifacts such as
dist/,playwright-report/, andtest-results/. They should stay ignored and out of commits.
No license file is included yet.








