薬局向けのシンプルな勤怠管理システムです。店舗設置タブレットからの打刻、勤怠集計、Excel/CSV出力に対応しています。
- 🚀 クイックスタートガイド - 15分で使い始める
- 👨💼 管理者向けマニュアル - 日常操作の完全ガイド
- 👥 スタッフ向けマニュアル - 打刻方法の簡単説明(印刷推奨)
- ⚙️ セットアップマニュアル - システム構築と保守管理
- 📖 ドキュメント一覧 - すべてのマニュアル
| 機能 | 説明 |
|---|---|
| 打刻 | 出勤・退勤・休憩開始/終了(2タップで完了) |
| 勤怠管理 | 日別・月別の勤怠記録の確認・修正 |
| スタッフ管理 | スタッフの登録・編集・雇用形態管理 |
| 店舗管理 | 複数店舗の登録・管理 |
| ポリシー管理 | 店舗ごとの就業ルール設定(締め日・丸め単位等) |
| データ出力 | Excel(.xlsx)/ CSV形式での勤怠データ出力 |
- フロントエンド: Next.js 15 (App Router) + TypeScript + Tailwind CSS
- バックエンド: Supabase (PostgreSQL + Auth + RLS)
- ホスティング: Vercel(予定)
git clone https://github.com/morangokei-debug/KinmuCore.git
cd KinmuCore
npm install- Supabase にログイン
- 「New Project」でプロジェクトを作成
- Project Settings > API から以下を取得:
- Project URL (
NEXT_PUBLIC_SUPABASE_URL) - anon public key (
NEXT_PUBLIC_SUPABASE_ANON_KEY)
- Project URL (
cp .env.local.example .env.local.env.local を編集して、Supabaseの接続情報を入力:
NEXT_PUBLIC_SUPABASE_URL=https://your-project.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=your-anon-key-here
Supabase Dashboard の SQL Editor で以下のファイルを順番に実行:
supabase/migrations/001_initial_schema.sql- テーブル・RLS作成supabase/seed.sql- サンプルデータ投入(任意)
Supabase Dashboard > Authentication > Users で管理者ユーザーを作成:
- 「Add user」をクリック
- メールアドレスとパスワードを入力
- 「Create user」で作成
npm run devhttp://localhost:3000 でアクセスできます。
| URL | 画面 |
|---|---|
/login |
ログイン |
/attendance |
勤怠管理(トップページ) |
/staff |
スタッフ管理 |
/stores |
店舗管理 |
/policies |
ポリシー管理 |
/export |
データ出力 |
| URL | 画面 |
|---|---|
/punch/{storeId} |
店舗別打刻画面(タブレット用) |
打刻画面のURLは、勤怠管理ページの「打刻ページ」リンクから取得できます。
店舗ごとに異なる就業ルールをデータとして管理します。
- 締め日: 月末 or 任意の日
- 丸め単位: 1分 / 5分 / 15分
- 休憩控除: 手動(打刻ベース)/ 自動控除
- 有給管理: ON/OFF(将来機能)
- 修正承認フロー: ON/OFF
- 有給管理(労務規定確定後)
- 扶養壁管理(103万/130万)
- シフト連携
- 複数法人一元管理
- 労務分析ダッシュボード
このプロジェクトはVercelでホスティングされています。
詳細なデプロイ手順は DEPLOYMENT.md を参照してください。
# 1. GitHub認証(初回のみ)
gh auth login -h github.com --web
# 2. GitHubリポジトリ作成 & プッシュ
./deploy-to-github.sh
# 3. Vercelにデプロイ
./deploy-to-vercel.sh詳細は DEPLOYMENT.md を参照してください。
NEXT_PUBLIC_SUPABASE_URL: SupabaseプロジェクトのURLNEXT_PUBLIC_SUPABASE_ANON_KEY: Supabaseの公開API Key
Vercelはmainブランチへのプッシュで自動デプロイされます。
src/
├── app/
│ ├── (auth)/login/ # ログイン画面
│ ├── (dashboard)/ # 管理画面(サイドバー付きレイアウト)
│ │ ├── attendance/ # 勤怠管理
│ │ ├── staff/ # スタッフ管理
│ │ ├── stores/ # 店舗管理
│ │ ├── policies/ # ポリシー管理
│ │ └── export/ # データ出力
│ └── punch/[storeId]/ # 打刻画面(認証不要)
├── components/
│ ├── layout/ # サイドバー等
│ └── ui/ # 共通UIコンポーネント
├── lib/
│ ├── supabase/ # Supabaseクライアント
│ └── utils.ts # ユーティリティ関数
└── types/
└── index.ts # 型定義