Lalabase
Tickets, Doku, Zeiterfassung und Kundengespräche an einem Ort, durchsuchbar per KI. Für Softwarefirmen mit Kundenprojekten. Open Source: auf deinem eigenen Server oder in unserer Cloud in Deutschland.
翻譯準備中
THE CULT CLIENT 是針對印度健身房與健身工作室的軟體:會員、續約、WhatsApp 提醒與 AI 回覆、出勤與簽到、個人訓練、付款、員工…
AI 翻譯
THE CULT CLIENT is gym management software for Indian gyms and fitness studios: memberships, renewals, WhatsApp reminders and AI replies, attendance and check-in, personal training, payments, staff pa
商業TypeScript · CSSGitHub @abhishek21lift-oss上線中營運者未確認
試用過了嗎? 點一下就好,不需要登入。
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證THE CULT CLIENT 是針對印度健身房與健身工作室的軟體,提供會籍、續約、WhatsApp 提醒與 AI 回覆、出席與簽到、個人訓練、付款、員工薪資與報表等功能,全部整合於一個應用程式。
AI 翻譯
THE CULT CLIENT is gym management software for Indian gyms and fitness studios: memberships, renewals, WhatsApp reminders and AI replies, attendance and check-in, personal training, payments, staff payroll and reports, in one app.
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
Next.js (App Router) frontend for the MyGymAgent multi-tenant gym management platform, talking to
the NestJS API in mygymagent-b.
See that repo's docs/ARCHITECTURE.md for the full technical blueprint. This app implements the
core gym domain (auth, dashboard, members, membership plans, memberships, attendance, staff,
branches, org settings) built there; every other product domain (AI, billing, workouts, nutrition,
inventory, CRM) has a "coming soon" route already wired into navigation and permission-gated, ready
to be filled in once its backend module lands.檢視完整 README ↗Next.js (App Router) frontend for the MyGymAgent multi-tenant gym management platform, talking to
the NestJS API in mygymagent-b.
See that repo's docs/ARCHITECTURE.md for the full technical blueprint. This app implements the
core gym domain (auth, dashboard, members, membership plans, memberships, attendance, staff,
branches, org settings) built there; every other product domain (AI, billing, workouts, nutrition,
inventory, CRM) has a "coming soon" route already wired into navigation and permission-gated, ready
to be filled in once its backend module lands.
ui.shadcn.com CLI registry isn't reachable from this environment, so components were written
directly against the same underlying packages the CLI would have used)Requires the API (mygymagent-b) running locally first.
npm install
cp .env.local.example .env.local # point NEXT_PUBLIC_API_URL at the API
npm run dev
Deployed to Vercel (builds this app natively). Dockerfile is provided as an alternative for a
Docker-based host — it uses Next's output: 'standalone' build and requires
NEXT_PUBLIC_API_URL as a build arg (it's inlined into the client bundle at build time, so it
must be set before docker build, not as a runtime env var):
docker build --build-arg NEXT_PUBLIC_API_URL=https://api.example.com -t mygymagent-f .
.github/workflows/ci.yml runs typecheck/lint/build/Docker-build on every push. See
mygymagent-b/docs/deployment/overview.md for the full deployment architecture (this app's and the
API's).
The API and this app run on separate origins in local dev (and typically in production too). The
backend's refresh token lives in an httpOnly cookie scoped to its own origin — a Next.js
proxy/middleware on this app's origin can never see that cookie, so there's no server-side
"is this request authenticated" check possible here. Instead:
<AuthProvider> (src/lib/auth/auth-context.tsx) bootstraps the session client-side on load by
calling POST /auth/refresh with credentials: 'include' — that fetch does correctly carry
the cross-origin cookie, since it's a request to the API's own origin regardless of which page
initiated it.(app)/layout.tsx and (auth)/layout.tsx redirect based on useAuth() once that bootstrap
resolves, rather than on any cookie-based route gate.src/lib/api/token-store.ts), never in
localStorage, to keep it out of reach of an XSS payload.If the API and web app are later deployed under the same origin (e.g. /api/* proxied through
this app), a real edge-level auth gate becomes possible again — until then, treat client-side
gating as the mechanism, with the API's own auth/permission checks as the actual security boundary
(the frontend gate is UX only, exactly like permission-aware navigation elsewhere in this app).
src/app/globals.css defines the full token set (colors, radius, motion) as CSS variables — a
single indigo brand color for trust/professionalism, a warm amber accent used sparingly, neutral
grays for everything else. Both light and dark themes are defined; next-themes toggles via a
class on <html>.