Use pending_activation, commercial Money terms, and activate flows so Admin master/spec and mocks match the shared organisation lifecycle. Co-authored-by: Cursor <cursoragent@cursor.com> |
||
|---|---|---|
| .cursor/rules | ||
| .githooks | ||
| docs | ||
| public | ||
| scripts | ||
| src | ||
| .env.example | ||
| .gitignore | ||
| .oxlintrc.json | ||
| index.html | ||
| package-lock.json | ||
| package.json | ||
| postcss.config.js | ||
| README.md | ||
| tailwind.config.js | ||
| tsconfig.app.json | ||
| tsconfig.json | ||
| tsconfig.node.json | ||
| vercel.json | ||
| vite.config.ts | ||
Gishen Admin Console
Internal ops console for Gishen Pharmacy — Pharmacist, Stock, Procurement, Finance, Marketing, Operations/Dispatch, Super Admin. Built as a React (Vite) SPA with shadcn/ui, Gishen branding, and English / Amharic i18n.
Stack
- React 19 + Vite + TypeScript
- Tailwind + shadcn-style Radix components
- Zustand, React Router, Axios-ready, Recharts, Sonner
- i18next (en / am)
- Mocks by default (
VITE_USE_MOCKS=true)
Quick start
npm install
npm run dev
Demo password for all accounts: demo123
| Role | |
|---|---|
| admin@gishen.et | Super Admin |
| pharmacist@gishen.et | Pharmacist (Bole branch) |
| stock@gishen.et | Stock Manager |
| procurement@gishen.et | Procurement |
| finance@gishen.et | Finance |
| marketing@gishen.et | Marketing Manager |
| ops@gishen.et | Operations |
Navigation registry
src/config/navigation.ts is the single source of truth for every navigable page and quick action. The sidebar and the topbar command palette (⌘K / Ctrl+K) both read from it, and results are filtered by the signed-in role.
Adding a page? Register it there alongside its route in src/app/AppRoutes.tsx — otherwise it will not show up in the sidebar or in search.
Docs
- Cross-app master:
docs/GISHEN-MASTER-SPEC.md— Admin / Mob / Ecom / B2B surface map, shared domain objects, auth providers, divergence notes. Refresh beforegit push(Cursor rule + optional.githooks/pre-push). - Admin backend contract:
docs/admin-backend-spec.md— updated whenever Admin modules are finalized.
# One-time: enable in-repo pre-push reminder for this clone
bash scripts/setup-githooks.sh
# Manual checklist / staleness check
bash scripts/sync-master-spec-reminder.sh
Deploy
- Live: https://gishen-admin.vercel.app (Vercel project
yaltopiatech/gishen-admin) vercel.jsonSPA rewrites for React Router- Build:
npm run build→dist - Git remote:
https://gitea.yaltopia.com/Gishen/Gishen-Admin.git - Redeploy:
npx vercel --prod --yes --scope yaltopiatech(Gitea is not auto-linked; use CLI or mirror to GitHub for Git integration)
Env:
VITE_USE_MOCKS=true
VITE_API_BASE_URL=
Related repos
Sibling apps under Yaltopia Project/ (see master spec Sources stamp):
- Gishen-Mob — customer mobile (Expo)
- Gishen-Ecom — customer storefront
- Gishen-B2B — institutional portal (org self-register UI lives there; Admin creates/approves orgs)
- Gishen-Dispatch-Bot — rider Telegram bot