Based on repository activity, growth velocity and community engagement.
28
Growth2/30
Activity6/25
Popularity2/25
Trust18/20
3
Stars
High
Sentiment
Votes
3
README.md
Stellabill Frontend
Web app for Stellabill — subscription billing and management. This repo is the frontend (React + Vite + TypeScript); it talks to the Stellabill backend API for plans, subscriptions, and metrics.
Dashboard (/dashboard) — Overview of subscription metrics (e.g. active subscriptions, MRR, pending charges). Placeholder cards are in place; real data is intended to come from the backend API.
Subscriptions (/subscriptions) — List and manage customer subscriptions. UI is ready for integration with the backend subscription endpoints.
Plans (/plans) — Define and view billing plans and pricing, to be synced with the backend and (where applicable) on-chain contract configuration.
Layout & navigation — Sidebar layout with links to Dashboard, Subscriptions, and Plans. Default route redirects to /dashboard.
API client — Centralized HTTP client under src/api/ that proxies /api to the backend (e.g. localhost:8080 in dev). Endpoints for subscriptions and plans are stubbed for integration.
The app is currently a skeleton: pages and API modules are in place; wiring to real backend responses and adding forms/tables is ongoing. Contributions are welcome (see ).
npm — v9+ (or use corepack: corepack enable then npm -v).
Git — to clone and contribute.
Optional for full flow:
Stellabill backend running locally (e.g. on port 8080) so /api returns real data.
1. Clone the repository
git clone https://github.com/Stellabill/stellabill-frontend.git
cd stellabill-frontend
If you use SSH and the repo is under the Stellabill org:
git clone git@github.com:Stellabill/stellabill-frontend.git
cd stellabill-frontend
2. Install dependencies
pnpm install
Use the lockfile as-is so installs are reproducible.
3. Environment (optional)
The app uses a proxy to /api; no env vars are required for the frontend alone. If you later add feature flags or API base URL overrides, you can use:
.env — defaults (committed only if safe).
.env.local — local overrides (add to .gitignore; do not commit secrets).
4. Run the development server
pnpm dev
App: http://localhost:5173
/api/* is proxied to http://localhost:8080 (start the backend separately if you need live data).
5. Build for production
pnpm build
Output is in dist/. Serve with any static host or run:
pnpm preview
to preview the production build locally.
6. Lint
pnpm lint
Fix auto-fixable issues; fix the rest manually so CI stays green.
Scripts
| Command | Description |
|------------------|--------------------------------------------|
| pnpm dev | Start Vite dev server (port 5173) |
| pnpm build | TypeScript check + Vite production build |
| pnpm preview | Serve dist/ locally |
| pnpm lint | Run ESLint |
| pnpm test | Run unit and component tests with Vitest |
Accessibility
The project follows strict accessibility (a11y) standards for interactive elements like modals. We use a unified focus management system to ensure:
Keyboard focus is trapped within active modals.
Focus is restored to the trigger element upon closing.
Modals are screen-reader friendly with proper ARIA attributes.