Javis OS
Javis OS는 기업가를 돕는 에이전시 AI로, 업무를 지원하고 함께 성장합니다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
B-club / KINGYO / C-girl / 焼肉En の 店舗 → キャスト → 素材 → 投稿 を記録・集計する社内業務用サイトです(日本語・スマホ優先)。 SNSへの自動投稿やAPI連携は行いません(記録専用)。 • スタック: Next.js 16 / TypeScript / Tailwind CSS 4 / PostgreSQL(本番)・PGlite(ローカル組み込みDB) • 認証: メール+パスワード(自己登録なし。管理者が発行)。店舗ごとに 管理者/編集スタッフ/閲覧のみ • 日付: 表示・カレンダーの日境界は Asia/Tokyo。日時は timestamptz、撮影日・回答日は date(架空の時刻は付けません) • 初回アクセス時に自動でマイグレーションと初期マスター(3店舗・20セット60問、seed/APP_SEED.json)が投入されます。何度実行しても重複せず、実績データは消えません(npm run db:seed でも可)。 • キャストは空で始まります。デモ用の架空データが必要な時だけ npm run seed:demo(DATABASE_URL 設定時は拒否)。 • ログイン後、/admin/users(システム管理者のみ)でスタッフを招待し、店舗ごとの権限を付与します。README 전문 보기 ↗
B-club / KINGYO / C-girl / 焼肉En の 店舗 → キャスト → 素材 → 投稿 を記録・集計する社内業務用サイトです(日本語・スマホ優先)。 SNSへの自動投稿やAPI連携は行いません(記録専用)。
npm install
cp .env.example .env # ローカルだけなら DATABASE_URL は消す/空でOK(./.data/pglite を自動作成)
ADMIN_PASSWORD='10文字以上のパスワード' npm run create-admin -- [email protected] "管理者"
npm run build && COOKIE_SECURE=false npm start # → http://localhost:3000
# 開発: COOKIE_SECURE=false npm run dev
seed/APP_SEED.json)が投入されます。何度実行しても重複せず、実績データは消えません(npm run db:seed でも可)。npm run seed:demo(DATABASE_URL 設定時は拒否)。/admin/users(システム管理者のみ)でスタッフを招待し、店舗ごとの権限を付与します。PC・スマホで同じ記録を見るには、共有のPostgreSQLが必要です。
.env に DATABASE_URL=... と COOKIE_SECURE=true(https運用時)を設定npm run db:migrate(マイグレーション+初期マスター)→ npm run create-admin -- ...DATABASE_URL は絶対にフロントエンドやGitへ出さないでください。GitHubリポジトリを接続し、環境変数 DATABASE_URL / COOKIE_SECURE=true を設定してデプロイ。初回は上記 3 のコマンドをローカルから実行(同じ DATABASE_URL を使う)。
npm run typecheck
npm test # 集計・検算例・権限・回答進捗などのドメインテスト(32件、メモリDB)
npm run build && npm run test:e2e # 実ブラウザ(Edge)のUIテスト 23件(別DB .data/e2e を使用)
pg_dump "$DATABASE_URL" -Fc -f backup.dump / pg_restore -d "$DATABASE_URL" --clean backup.dump.data/pglite フォルダごとコピー/戻すダッシュボード → CSV出力(キャスト一覧・素材一覧・投稿履歴。数式インジェクション対策済み)も使えますBCL-PR-0001-01 形式で、店舗×種別のカウンタ(INSERT … ON CONFLICT DO UPDATE)で採番するため同時登録でも重複せず、取消しても振り直しません。(id, store_id) でDBでも禁止。保存の連打は画面側のロック+request_key の一意制約で二重登録を防ぎます。materials に、ブラウザから直接アップロードします(署名付きURL・サーバーを経由しないので大きな動画もOK)。閲覧は認証後の期限付きURL(1時間)です。SUPABASE_URL と SUPABASE_SERVICE_ROLE_KEY(Project Settings → API の service_role)を設定します。キーはサーバー専用で、Gitやブラウザに出さないでください。MAX_UPLOAD_MB の小さい方です。対応形式: JPEG/PNG/WebP/GIF/HEIC、MP4/MOV/WebM。GEMINI_API_KEY(Google AI Studio で取得。サーバー専用)を設定します。モデルは GEMINI_MODEL(既定 gemini-3.8-flash)で変更できます。