Javis OS
Javis OS는 기업가를 돕는 에이전시 AI로, 업무를 지원하고 함께 성장합니다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Монголын цагийн ажил хайгч болон ажил олгогчийг нэг платформ дээр хурдан бөгөөд найдвартай холбоно.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Ажил хайгч (staff) болон ажил олгогч (company)-ыг холбох платформ. Next.js 16 (App Router) + Supabase (Postgres, Auth, Storage).
npm install
cp .env.example .env.local # утгуудыг бөглөнө
npm run dev # http://localhost:3000
| Команд | Үүрэг |
|---|---|
npm run dev | Хөгжүүлэлтийн сервер |
npm run build / npm start | Production build / ажиллуулах |
npm run typecheck | TypeScript шалгалт |
npm run lint | ESLint |
npm test | Vitest unit тест |
npm run theme:dark | Dark mode CSS-ийг (src/app/theme-dark.css) дахин үүсгэнэ. Шинэ өнгөний класс нэмсний дараа ажиллуулна |
Pull request бүр дээр GitHub Actions (.github/workflows/ci.yml) дээрх 4 шалгалт болон build-ийг ажиллуулна.
Бүрэн жагсаалт .env.example-д бий.
| Хувьсагч | Тайлбар |
|---|---|
NEXT_PUBLIC_SUPABASE_URL, NEXT_PUBLIC_SUPABASE_ANON_KEY | Supabase төсөл. Anon key зөвхөн нэвтрэлтэд ашиглагдана |
SUPABASE_SERVICE_ROLE_KEY | Сервер талын бүх DB/Storage хандалт. Клиент рүү хэзээ ч гаргахгүй |
SESSION_SECRET | Session cookie-н HMAC түлхүүр, 32+ тэмдэгт |
ADMIN_EMAILS | Админ имэйлүүд (таслалаар). Жагсаалтаас хасахад тухайн админы session шууд хүчингүй болно |
GMAIL_USER, GMAIL_APP_PASSWORD | Бүртгэлийн баталгаажуулах код илгээх |
BILLING_BANK_NAME, BILLING_ACCOUNT_NUMBER, BILLING_ACCOUNT_NAME | Багц ахиулах үед харуулах данс. Тохируулаагүй бол төлбөрийн цонх 503 буцаана |
session cookie (src/lib/session.ts) олгоно. src/proxy.ts нь /dashboard, /admin-ыг хамгаална; API бүр getSession()-оор эрхээ шалгана.service_role клиентээр (src/lib/supabase.ts) хандана.src/lib/plans.ts-д (Free 10 / Standard 50 / Premium 100 идэвхтэй зар). Хугацаа дууссан төлбөртэй багц Free лимиттэй болно./api/upload (төрөл, хэмжээ, magic byte шалгана).localStorage-д хадгалагдана, сонгоогүй бол төхөөрөмжийн тохиргоог дагана.<html> дээр dark class тавигдана (src/lib/theme.ts, src/components/theme/ThemeToggle.tsx).scripts/generate-dark-theme.py нь ашиглагдсан цайвар өнгөний классуудыг (bg-white, text-gray-900, bg-indigo-50 г.м.) олж харанхуй хувилбарыг src/app/theme-dark.css-д бичнэ. Шинэ өнгөний класс нэмсэн бол npm run theme:dark ажиллуулна.dark: variant-ыг шууд хэрэглэж болно (html.dark-аар ажиллана).supabase/migrations/ доторх файлуудыг дарааллаар нь ажиллуулна:
npx supabase db push
Тухайн хэрэглэгчийн одоо байгаа бүх session-ийг хүчингүй болгох:
insert into auth_session_revocations (user_id, revoked_before)
values ('<user-uuid>', now())
on conflict (user_id) do update set revoked_before = now();