{"id":37600179,"url":"https://github.com/igapyon/scheduly","last_synced_at":"2026-01-16T10:02:25.606Z","repository":{"id":320220300,"uuid":"1081280698","full_name":"igapyon/scheduly","owner":"igapyon","description":"Scheduly は、iCalendar（ICS）と連携して日程候補の作成・共有・回答収集・配布を素早く行える軽量なスケジュール調整アプリです。Webブラウザで利用し、管理者用と参加者用の秘密URLでシンプルに共有できます。ただいまBETA公開中です。","archived":false,"fork":false,"pushed_at":"2025-11-14T16:15:32.000Z","size":9382,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"devel","last_synced_at":"2025-11-14T18:23:13.474Z","etag":null,"topics":["ical","ics","schedule"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/igapyon.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2025-10-22T15:00:50.000Z","updated_at":"2025-11-13T00:08:24.000Z","dependencies_parsed_at":"2025-10-22T17:17:36.354Z","dependency_job_id":"8a117d8a-be39-4f95-ad5d-3585010cde46","html_url":"https://github.com/igapyon/scheduly","commit_stats":null,"previous_names":["igapyon/scheduly"],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/igapyon/scheduly","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/igapyon%2Fscheduly","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/igapyon%2Fscheduly/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/igapyon%2Fscheduly/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/igapyon%2Fscheduly/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/igapyon","download_url":"https://codeload.github.com/igapyon/scheduly/tar.gz/refs/heads/devel","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/igapyon%2Fscheduly/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28478049,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T06:30:42.265Z","status":"ssl_error","status_checked_at":"2026-01-16T06:30:16.248Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ical","ics","schedule"],"created_at":"2026-01-16T10:02:25.517Z","updated_at":"2026-01-16T10:02:25.591Z","avatar_url":"https://github.com/igapyon.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Scheduly\n\nScheduly は、iCalendar（ICS）と連携して日程候補の作成・共有・回答収集・配布を素早く行える軽量なスケジュール調整アプリです。Webブラウザで利用し、管理者用と参加者用の秘密URLでシンプルに共有できます。\n\n## 主な特徴\n- ICS のインポート/エクスポートで外部カレンダーと連携\n- 管理者URL・参加者URL（秘密URL）で簡易に共有・アクセス\n- 回答のインライン編集とリアルタイム反映、Excel 出力に対応\n- セッションごとに独立したプロジェクトを作成（トップページへアクセスするたびに新しいプロジェクト ID を払い出し、共有URLを発行しない限り他のセッションには共有されない）\n- インメモリ運用（短期利用向け）。必要に応じて ICS/JSON で外部保全\n\n\u003e セキュリティ注意: 秘密URLを前提とした簡易モデルです。URLの取り扱いにはご注意ください。認証・承認が必要な運用では別途の仕組みを導入してください。\n\n## 想定ユースケース\n- チームやコミュニティが候補日をまとめて提示し、参加者が ○/△/× とコメントでリアクションして即時に集計したいとき\n- 認証基盤を用意せずに、URL を共有するだけで管理者/参加者の画面を切り替えて使いたい場合\n- イベントや会議の日程調整を素早く進め、確定候補を ICS で配布・外部カレンダーへ取り込みたいケース\n\n\u003e 参加者URLが第三者に漏れると誰でも回答を更新できるため、URL を知っている人のみがアクセスできる前提で運用してください。\n\n## はじめに（ローカル動作）\n1) 依存を導入: `npm install`\n2) `.env` を作成し、API の URL を指定します（例: `SCHEDULY_API_BASE_URL=http://localhost:4000`）。\n3) API サーバーを起動: 別ターミナルで `npm run api:dev`（既定ポート: http://localhost:4000）。\n4) フロントエンドを起動: `npm run dev`（Webpack Dev Server が http://localhost:5173 をリッスン）。\n   - 管理者画面: `http://localhost:5173/index.html`（共有URL発行後は `/a/{token}` へ自動遷移）\n   - 参加者画面: 管理者画面で発行した参加者URL（例: `/p/{token}`）\n5) 本番ビルド: `npm run build` → 静的資産コピー `npm run postbuild`（`dist/` に配置）\n\n## 基本の流れ（外部仕様・概要）\n以下のように、日程調整をすばやく効果的に実現できます。\n- 管理者が日程（候補日）を用意する（画面で直接入力、または ICS をインポート）\n- 共有トークンで管理者URL/参加者URLを発行し、参加者URLを参加者へ共有する\n- 参加者が各候補に ○/△/× とコメントで回答する\n- 一覧やサマリーで回答状況を確認し、必要に応じて Excel/ICS をエクスポート\n- 確定した日程を ICS として配布する（外部カレンダーで利用可能）\n\nより詳しい説明は `docs/external/guide-ical-workflow.md` を参照してください。\n\n## 外部仕様\n\n外部仕様を理解するための主要ドキュメントは次の3つです。\n- [docs/external/concept-assumptions.md](docs/external/concept-assumptions.md)\n- [docs/external/index-screens.md](docs/external/index-screens.md)\n- [docs/external/guide-ical-workflow.md](docs/external/guide-ical-workflow.md)\n\n\u003e ⚠ **匿名アクセスの注意**  \n\u003e 現状の実装は匿名でログインでき、管理画面・参加者画面ともに誰でもデータを書き換え可能な仕様です。ハッシュ値付き URL で画面を出し分けるのみで認証やアクセス制御は行っていません。セキュアな運用が必要な場合は必ず別途認証・承認の仕組みを導入してください。\n\n## Documentation Index\n\n- ドキュメントの読み方と読者別索引: `docs/README.md`\n- **外部向け** [docs/external/README.md](docs/external/README.md): 読み始める順番と目的別リンク\n- **外部向け** [docs/external/index-screens.md](docs/external/index-screens.md): 画面役割と回答管理 UI の詳細\n- **外部向け** [docs/external/guide-ical-workflow.md](docs/external/guide-ical-workflow.md): ICS 連携の運用メモ\n- **外部向け** [docs/external/concept-assumptions.md](docs/external/concept-assumptions.md): 外部仕様の前提・制約（通常と異なる方式）\n- **外部向け** [docs/external/ref-disclaimer.md](docs/external/ref-disclaimer.md): 免責事項と利用時の注意点\n- **外部向け** [docs/external/ref-changelog.md](docs/external/ref-changelog.md): 変更履歴のメモ\n- **外部向け** [docs/external/guide-contributing.md](docs/external/guide-contributing.md): コントリビューション手引き\n- **外部向け** [docs/external/ref-contributors.md](docs/external/ref-contributors.md): コントリビューター一覧\n- **外部向け** [docs/external/glossary.md](docs/external/glossary.md): 用語集\n- **内部向け** `docs/internal/README.md`: 内部仕様の読み方と依存関係ガイド\n- **内部向け** [docs/internal/concept-architecture.md](docs/internal/concept-architecture.md): 画面構成とバンドル構造\n- **内部向け** [docs/internal/spec-data-model.md](docs/internal/spec-data-model.md): オンメモリ前提のデータモデル整理\n- **内部向け** [docs/internal/spec-api-flow.md](docs/internal/spec-api-flow.md): in-memory サービスと API 草案\n- **内部向け** [docs/internal/spec-server-integration.md](docs/internal/spec-server-integration.md): サーバー導入時の検討事項（WIP）\n- **内部向け** [docs/internal/ref-verify-checklist.md](docs/internal/ref-verify-checklist.md): QA・目視確認の手順\n- **内部向け** [docs/internal/guide-development-process.md](docs/internal/guide-development-process.md): 現行の開発プロセス定義（WIP）と経緯の要点\n- **内部向け** [docs/internal/DEVELOPER_NOTES.md](docs/internal/DEVELOPER_NOTES.md): 作業メモと TODO の整理\n- **内部向け** [docs/internal/deploy-sakura-vps.md](docs/internal/deploy-sakura-vps.md): Ubuntu 24.04 LTS 上のさくらの VPS でベータ公開する最小手順\n\n| 種別 | 主な用途 | 配置 | 起動方法 / 挙動 |\n| ---- | -------- | ---- | -------- |\n| React / webpack 版 | 本番想定のアプリ実装（共有トークンで `/a/{token}` / `/p/{token}` へリダイレクト。`/r/{token}` は後方互換で `/p/{token}` に転送） | `src/frontend/` | `npm run dev` / `npm run build` |\n| レガシーモック | 最新アプリ UI のスナップショット確認用静的コンテンツ | `public/legacy/` | ブラウザで直接開くだけ |\n\nどの構成でも、動作確認時には Chrome DevTools の Console を開き、警告やエラーを把握する習慣を徹底してください。ICS まわりの詳細な運用は [docs/external/guide-ical-workflow.md](docs/external/guide-ical-workflow.md) にまとめています。\n\n### Sample Data\n\nまずは触ってみたい方向けに、すぐに使えるデモデータを用意しています。管理画面からプロジェクトJSONを読み込むか、ICSをインポートすれば即座に体験できます。\n\n- Project JSON: `public/proj/scheduly-project-sampledata-001.json`\n- ICS: `public/ics/scheduly-ics-sampledata-001.ics`\n\n## 開発者向け情報\n\n開発手順やビルド、レガシーモックの詳細は開発者向けドキュメントにまとめています。開発・運用に関わる方は以下を参照してください。\n\n- `docs/internal/DEVELOPER_NOTES.md`\n\n## ライセンス\n\nこのリポジトリは [Apache License 2.0](LICENSE) の下で配布されています。利用上の注意事項や免責については `docs/external/ref-disclaimer.md` も参照してください。\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Figapyon%2Fscheduly","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Figapyon%2Fscheduly","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Figapyon%2Fscheduly/lists"}