{"id":29504331,"url":"https://github.com/tech-mw/dev-exercises","last_synced_at":"2026-04-09T07:02:32.432Z","repository":{"id":304607692,"uuid":"1017692372","full_name":"tech-mw/dev-exercises","owner":"tech-mw","description":"[Regular updates]A repository that categorizes and systematically demonstrates environment construction, web development, etc.","archived":false,"fork":false,"pushed_at":"2025-07-14T06:57:41.000Z","size":29,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-14T08:56:05.204Z","etag":null,"topics":["cicd","django","docker","environment","fastapi","mysql","python","systematic","web-development"],"latest_commit_sha":null,"homepage":"","language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tech-mw.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2025-07-11T00:28:46.000Z","updated_at":"2025-07-14T06:57:44.000Z","dependencies_parsed_at":"2025-07-14T08:57:17.114Z","dependency_job_id":"d885dfd2-8e0c-419b-9095-36cfab2bb924","html_url":"https://github.com/tech-mw/dev-exercises","commit_stats":null,"previous_names":["tech-mw/dev-exercises"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/tech-mw/dev-exercises","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tech-mw%2Fdev-exercises","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tech-mw%2Fdev-exercises/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tech-mw%2Fdev-exercises/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tech-mw%2Fdev-exercises/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tech-mw","download_url":"https://codeload.github.com/tech-mw/dev-exercises/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tech-mw%2Fdev-exercises/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265465922,"owners_count":23770456,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["cicd","django","docker","environment","fastapi","mysql","python","systematic","web-development"],"created_at":"2025-07-15T23:02:01.759Z","updated_at":"2025-12-30T22:07:12.796Z","avatar_url":"https://github.com/tech-mw.png","language":"Dockerfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"🛠️**進行中 – 定期的なアップデートと継続的な改善が計画されています**🛠️\n\n## 利用技術\n[![My Skills](https://skillicons.dev/icons?i=python,django,fastapi,nodejs,express,mysql,docker,redis,bash,git)](https://skillicons.dev)\n\n## リポジトリ構成\n\n\u003cpre\u003e\nPJ/\n├── 01_basics/ \n│    ├─── docker\n│    │     ├── 01-fastapi-single\n│    │     ├── 02_environments\n│    │     ├── 03-init-mysql\n│    │     └── 04-python-redis\n│    ├─── git\n│    │     ├── 01-detached-non-fast-forward\n│    │     └── 02-detached-fast-forward\n│    ├─── mysql\n│    │     └── 01-ebook-schema-sql\n│    └─── python\n│          └── 01-sd-image-cli\n├── 02_environments/\n└── 03_webapps/\n     ├── 01-django-sns-priority-board\n     └── 02-django-llm-summary-notes\n\u003c/pre\u003e\n---\n## 1. 01_basics\n- python、dockerなど最小構成を通して仕組みを体系的に実演するセクション\n\n### 1-1. docker\n#### 1-1-1. [01-fastapi-single](./01_basics/docker/01-fastapi-single/README.md)\n- FastAPIをPython公式イメージで最小構成Docker化 \n- 特徴\n  - uvicorn実行\n  - シンプルなエンドポイント\n#### 1-1-2. [02_environments](./01_basics/docker/02-node-express-api/README.md)\n- Node.js（Expressアプリ）を公式NodeイメージでDocker化\n- 特徴\n  - 開発用にnodemonホットリロード対応\n  - バインドマウントでホストソースを即反映\n  - venvなど不要ファイルを含めない構造を推奨\n#### 1-1-3. [03-init-mysql](./01_basics/docker/03-init-mysql/README.md)\n- Mysqlを公式MysqlイメージでDocker化\n- 特徴\n  - 初期化用SQLをinitdb.dに置くだけで自動実行\n  - ホスト側のSQLファイルをバインドマウントして管理\n#### 1-1-4. [04-python-redis](./01_basics/docker/04-python-redis/README.md)\n- Python+Redis公式イメージでDocker化\n- 特徴\n  - redisコンテナ作成時に初期データ登録\n\n### 1-2. git\n#### 1-2-1. [01-detached-non-fast-forward](01_basics/git/01-detached-non-fast-forward/README.md)\n- detached HEAD状態の動作検証：non-fast-forward\n- 特徴\n  - HEADの仕組みと挙動を理解するために、意図的に detached HEAD × non-fast-forward にして検証 \n  - TerminalとSourceTreeでの表示の違いを比較（各状態でTerminalとSourceTreeそれぞれの表示画面をスクリーンショット）\n\n#### 1-2-2. [02-detached-fast-forward](01_basics/git/02-detached-fast-forward/README.md)\n- detached HEAD状態の動作検証：fast-forward\n- 特徴\n  - HEADの仕組みと挙動を理解するために、意図的に detached HEAD × fast-forward にして検証\n  - TerminalとSourceTreeでの表示の違いを比較（各状態でTerminalとSourceTreeそれぞれの表示画面をスクリーンショット）\n\n### 1-3. mysql\n#### 1-3-1. [01-ebook-schema-sql](01_basics/mysql/01-ebook-schema-sql/README.md)\n- Mysqlを公式イメージでDocker化、簡易的な電子書籍アプリを想定したモデルとSQLサンプル\n- 特徴\n  - ユーザー情報、書籍情報、書籍購入履歴、書籍閲覧履歴 4つのテーブルとサンプルデータを流し込み、初期構築\n  - [期間内に特定の出版社を書籍を購入した累計額をユーザー毎に集計]など実務的なSQLサンプル\n\n### 1-4. python\n#### 1-4-1. [01-sd-image-cli](01_basics/python/01-sd-image-cli/README.md)\n- AI画像生成ライブラリ「Stable Diffusion」を使用したミニマムなPython CLI サンプル\n- 特徴\n  - Stable Diffusion（diffusers）を利用して画像を生成する最小スクリプト\n  - 日本語で入力したプロンプトを自動的に英語へ翻訳してから生成  \n    （`--no_translate` オプションで翻訳をスキップ可能）\n  - option指定可：サイズ（縦/横）、出力ファイル名、出力フォーマット(jpg or png)、出力ディレクトリ、翻訳有無切替\n  - height / width は 8 の倍数のみ許可\n  - 初回実行時はモデルがダウンロードされるため時間がかかる（2回目以降はキャッシュが効いて高速化）\n---\n## 2. 02_environments\n- 環境構築系セクション（複数サービス連携やCI/CDなど）\n---\n## 3. 03_webapps\n- Webアプリ開発セクション\n#### 3-1. [01-django-sns-priority-board](03_webapps/01-django-sns-priority-board/README.md)\n- Django（Function-Based View + 一部 Class-Based View）で構築した、簡易社内SNS風Webアプリケーション\n- 特徴\n  - 簡易的な標準CRUD機能、ミニマムな構成、UIはbootstrapで最低限装飾\n  - 投稿には「タイトル・本文・画像・通知レベル」を設定可\n  - 通知レベルの設定で「重要なお知らせ」など優先度が高い情報は表示が強調/目立たせる\n  - 「いいね」や「既読数」機能有（簡易的）\n#### 3-2. [02-django-llm-summary-notes](03_webapps/02-django-llm-summary-notes/README.md)\n- Django（CBV）× TextRank（抽出型）or Ollama（生成型）での要約生成メモアプリ\n- 特徴\n  - メモの作成 / 編集 / 削除（CRUD） \n    - 作成時：保存時に要約（生成型 or 抽出型）を自動生成 \n    - ローカルLLM/ollamaはdocker化（GUIアプリでの起動でもOK）\n    - ローディングスピナー\n  - ページネーション（最大表示数20）\n  - フラッシュメッセージ\n  - 検索機能\n  - 認証機能 \n    - 未ログイン時は認証画面へ誘導\n  - 単体テスト（unittest）\n- 追加予定\n  - URL貼り付けからの要約生成\n  - サインアップ（複数ユーザー利用）\n  - など\n\n---\n\n### Claude Codeサンプルアプリ集\n#### [シンプルなハイ＆ローのカードゲーム](https://github.com/tech-mw/claude_code/blob/main/card-game/README.md)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftech-mw%2Fdev-exercises","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftech-mw%2Fdev-exercises","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftech-mw%2Fdev-exercises/lists"}