Corporate¶
Purpose¶
The main public corporate site, plus a customer-portal authentication surface consumed by other apps.
Source directory¶
apps/corporate-web/ — src/ (React frontend), worker/ (this app's own Worker code), public/customer-portal/ (portal static assets, including the generated shared.css — see Monorepo "Generated CSS").
Framework¶
React 18 + TypeScript + Vite.
Commands¶
npm run dev:corporate # Vite dev server
npm run build:corporate # sync:portal-styles -> tsc -b -> vite build -> tsc -p worker/tsconfig.json
Output¶
apps/corporate-web/dist/ (frontend) - the worker's own compiled output is type-checked, not
separately bundled (Wrangler compiles worker/index.ts at deploy time).
Deployment mechanism¶
Cloudflare Worker, name akshaya-group-global, Static Assets + run_worker_first for
/customer-portal* and /api/customer/*. wrangler deploy --config apps/corporate-web/wrangler.jsonc.
Domain: akshayagroupglobal.com (custom_domain: true).
Environment variables¶
None currently read from import.meta.env in this app's source (see
Applications overview "Note on environment variables").
Related domain¶
akshayagroupglobal.com
Dependencies on shared packages¶
@akshaya/ui, @akshaya/shared.
Related API endpoints¶
- Its own Worker (
/api/customer/*, onakshayagroupglobal.comitself):auth/login,auth/logout,auth/register,auth/session,me,requirements,freelancers/shortlist. - The central API Worker (
api.akshayagroupglobal.com):/api/contact(the corporate contact form),/api/public-config,/api/health.
Troubleshooting¶
/customer-portal*returns a 404 for a real client-side route: checkrun_worker_firstinapps/corporate-web/wrangler.jsoncstill lists the path pattern, and that no file underpublic/collides with it - see Cloudflare → Troubleshooting.- Portal styling looks wrong after a
packages/uichange: runnpm run sync:portal-stylesand commit the regeneratedapps/corporate-web/public/customer-portal/shared.css- CI'scheck:portal-styles-driftstep catches this if forgotten.