{"id":44067911,"url":"https://github.com/matsumo0922/yumemi-codecheck","last_synced_at":"2026-02-08T03:39:28.922Z","repository":{"id":240404072,"uuid":"799074151","full_name":"matsumo0922/yumemi-codecheck","owner":"matsumo0922","description":"株式会社ゆめみ様 Android エンジニアコードチェック課題 (yumemi-inc/android-engineer-codecheck)","archived":false,"fork":false,"pushed_at":"2024-05-21T01:55:59.000Z","size":8894,"stargazers_count":1,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-05-21T17:34:20.552Z","etag":null,"topics":["android","github-api","jetpack-compose"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/matsumo0922.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}},"created_at":"2024-05-11T05:40:36.000Z","updated_at":"2024-05-21T01:53:49.000Z","dependencies_parsed_at":"2024-05-20T16:52:34.775Z","dependency_job_id":"c613e9ab-1028-4ee2-be8a-491a87a1cef2","html_url":"https://github.com/matsumo0922/yumemi-codecheck","commit_stats":null,"previous_names":["matsumo0922/yumemi-codecheck"],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/matsumo0922/yumemi-codecheck","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matsumo0922%2Fyumemi-codecheck","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matsumo0922%2Fyumemi-codecheck/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matsumo0922%2Fyumemi-codecheck/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matsumo0922%2Fyumemi-codecheck/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/matsumo0922","download_url":"https://codeload.github.com/matsumo0922/yumemi-codecheck/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matsumo0922%2Fyumemi-codecheck/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29219276,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-08T03:18:47.732Z","status":"ssl_error","status_checked_at":"2026-02-08T03:15:31.985Z","response_time":57,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: 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":["android","github-api","jetpack-compose"],"created_at":"2026-02-08T03:39:25.427Z","updated_at":"2026-02-08T03:39:28.912Z","avatar_url":"https://github.com/matsumo0922.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eyumemi-codecheck\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\nGitHub リポジトリ検索アプリ\u003cbr\u003e\nyumemi-codecheck は 株式会社ゆめみ様の Android エンジニア用コードチェック課題の提出用リポジトリです。\n\u003c/p\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"./LICENSE\"\u003e\n    \u003cimg alt=\"LICENSE\" src=\"https://img.shields.io/badge/license-GPL-blue.svg?maxAge=43200\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/supports-Android%206+-AD2A5A\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://open.vscode.dev/matsumo0922/yumemi-codecheck\"\u003e\n    \u003cimg alt=\"Open in VSCode\" src=\"https://img.shields.io/static/v1?logo=visualstudiocode\u0026label=\u0026message=Open%20in%20Visual%20Studio%20Code\u0026labelColor=2c2c32\u0026color=007acc\u0026logoColor=007acc\" /\u003e\n  \u003c/a\u003e\n\u003c/div\u003e\n\n\u003chr\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"docs/screenshots_compact.png\" width=\"2048\" alt=\"screenshots\"\u003e\n\u003c/p\u003e\n\n\n## Status\n#### Ready!! :rocket:\n\nGitHub リリースにて最新のコードおよび APK を配布しています。\nまた、モバイルアプリ開発者の方はアプリをビルドして、自分でインストールすることもできます。\n本アプリは株式会社ゆめみ様の[Androidエンジニア用コードチェック課題](https://github.com/yumemi-inc/android-engineer-codecheck)を元に開発されており、元リポジトリも併せてご覧ください。\n\n#### [Download](https://github.com/matsumo0922/yumemi-codecheck/releases) from GitHub\n\n## Tech Stack\n\n- [Kotlin](https://kotlinlang.org/)\n- [Kotlin Coroutines](https://kotlinlang.org/docs/coroutines-overview.html)\n- [Kotlin Flow](https://kotlinlang.org/docs/flow.html)\n- [Kotlin Multiplatform](https://www.jetbrains.com/ja-jp/kotlin-multiplatform/)\n- [Jetpack Compose](https://developer.android.com/jetpack/compose?hl=ja)\n- [Jetpack Compose Multiplatform](https://www.jetbrains.com/ja-jp/lp/compose-multiplatform/)\n- [Material3](https://m3.material.io)\n\n## Environment\n\n- IDE: Android Studio Iguana | 2023.2.1 Patch 1\n- Kotlin: 2.0.0-RC03\n- Java: 17\n- Gradle: 8.3.2\n- minSdk: 23\n- targetSdk: 34\n- compileSdk: 34\n\n※ リリースビルドでの動作確認を行う場合は、local.properties に 以下のように変数を設定してください。\n\n```properties\nstorePassword=yumemi\nkeyPassword=yumemi\nkeyAlias=key0\n```\n\n## Feature\n#### Ready!!\n\n- リポジトリ\n  - リポジトリの検索 (`search/repositories`)\n  - リポジトリの詳細表示 (`repos/:owner/:repo`)\n  - お気に入り機能\n- トレンド\n  - Weekly のトレンドリポジトリを表示 ([`alisoft/github-trending-api`](https://github.com/alisoft/github-trending-api))\n  - トレンドリポジトリの詳細\n  - トレンドリポジトリのお気に入り機能\n- UI/UX\n  - ライトモード / ダークモード\n  - ローカライズ（日本語 / 英語）\n  - テーマカラーの変更\n  - ダイナミックカラーの対応 (Android 12 以上)\n  - Foldable, タブレット, デスクトップなどの大画面デバイスへの対応\n\n#### Not Ready...\n\n- KMP\n  - compose-multiplatform を用いた iOS および Desktop への展開\n\n## Screenshots\n#### Medium screen\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"docs/screenshots_medium.png\" width=\"4096\" alt=\"medium screen screenshots\"\u003e\n\u003c/p\u003e\n\n#### Expanded screen\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"docs/screenshots_expanded.png\" width=\"4096\" alt=\"expanded screen screenshots\"\u003e\n\u003c/p\u003e\n\n## Architecture\n\nアプリのアーキテクチャ図を示します。 基本的には MVVM + Repository パターンを採用していますが、一部異なる箇所があります。\nまた、実際はモジュール分割されていませんが、他パッケージとの結合はなく各機能は疎結合です。モジュール分割予定のissueについては #23 をご覧ください。\n\n```mermaid\n%%{\ninit: {\n'theme': 'neutral'\n}\n}%%\n\ngraph LR\n  subgraph gradle \n    build-logic  \n  end  \n  subgraph application\n    app  \n  end  \n  subgraph core\n    common\n    datastore\n    model\n    repository\n    ui\n  end\n  subgraph feature\n    home\n    repo\n    setting\n  end\n  app --\u003e home\n  app --\u003e repo\n  app --\u003e setting\n  home --\u003e ui\n  home --\u003e repository\n  repo --\u003e ui\n  repo --\u003e repository\n  setting --\u003e ui\n  setting --\u003e repository\n  ui --\u003e model\n  repository --\u003e datastore\n  datastore --\u003e model\n  model --\u003e common\n```\n\n## Contribute\n\nこのアプリは Gradle の Convention Plugins を用いてビルドのロジックを共通化しており、`build-logic` というモジュールに全てのロジックが記述されています。このアプローチに関しては、[nowinandroid](https://github.com/matsumo0922/nowinandroid/tree/main/build-logic) をご覧ください。\n\nこのアプリは株式会社ゆめみ様のAndroidエンジニア用コードチェック課題であるため、コントリビュートは基本的に受け付けておりません。ただし、バグ報告や機能追加の提案は歓迎いたしますので、Issue を作成してください。\n\n## License\n\n```text\nyumemi-codecheck\nCopyright (C) 2024 daichi-matsumoto\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program.  If not, see \u003chttps://www.gnu.org/licenses/\u003e.\n\nAlso you can contact me by electronic mail at caios.system@gmail.com.\n\nIf the program does terminal interaction, make it output a short\nnotice like this when it starts in an interactive mode:\n\n    yumemi-codecheck  Copyright (C) 2024 daichi-matsumoto\n    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.\n    This is free software, and you are welcome to redistribute it\n    under certain conditions; type `show c' for details.\n\nThe hypothetical commands `show w' and `show c' should show the appropriate\nparts of the General Public License.  Of course, your program's commands\nmight be different; for a GUI interface, you would use an \"about box\".\n\nYou should also get your employer (if you work as a programmer) or school,\nif any, to sign a \"copyright disclaimer\" for the program, if necessary.\nFor more information on this, and how to apply and follow the GNU GPL, see\n\u003chttps://www.gnu.org/licenses/\u003e.\n\nThe GNU General Public License does not permit incorporating your program\ninto proprietary programs.  If your program is a subroutine library, you\nmay consider it more useful to permit linking proprietary applications with\nthe library.  If this is what you want to do, use the GNU Lesser General\nPublic License instead of this License.  But first, please read\n\u003chttps://www.gnu.org/licenses/why-not-lgpl.html\u003e.\n```\n\n\u003cdetails\u003e\n\u003csummary\u003eオリジナル ReadMe (yumemi-android-engineer-code-check)\u003c/summary\u003e\n\n# 株式会社ゆめみ Android エンジニアコードチェック課題\n\n## 概要\n\n本プロジェクトは株式会社ゆめみ（以下弊社）が、弊社に Android エンジニアを希望する方に出す課題のベースプロジェクトです。本課題が与えられた方は、下記の概要を詳しく読んだ上で課題を取り組んでください。\n\n## アプリ仕様\n\n本アプリは GitHub のリポジトリを検索するアプリです。\n\n\u003cimg src=\"docs/app.gif\" width=\"320\"\u003e\n\n### 環境\n\n- IDE：Android Studio Flamingo | 2022.2.1 Patch 2\n- Kotlin：1.6.21\n- Java：17\n- Gradle：8.0\n- minSdk：23\n- targetSdk：31\n\n※ ライブラリの利用はオープンソースのものに限ります。\n※ 環境は適宜更新してください。\n\n### 動作\n\n1. 何かしらのキーワードを入力\n2. GitHub API（`search/repositories`）でリポジトリを検索し、結果一覧を概要（リポジトリ名）で表示\n3. 特定の結果を選択したら、該当リポジトリの詳細（リポジトリ名、オーナーアイコン、プロジェクト言語、Star 数、Watcher 数、Fork 数、Issue 数）を表示\n\n## 課題取り組み方法\n\nIssues を確認した上、本プロジェクトを [**Duplicate** してください](https://help.github.com/en/github/creating-cloning-and-archiving-repositories/duplicating-a-repository)（Fork しないようにしてください。必要ならプライベートリポジトリにしても大丈夫です）。今後のコミットは全てご自身のリポジトリで行ってください。\n\nコードチェックの課題 Issue は全て [`課題`](https://github.com/yumemi-inc/android-engineer-codecheck/milestone/1) Milestone がついており、難易度に応じて Label が [`初級`](https://github.com/yumemi-inc/android-engineer-codecheck/issues?q=is%3Aopen+is%3Aissue+label%3A初級+milestone%3A課題)、[`中級`](https://github.com/yumemi-inc/android-engineer-codecheck/issues?q=is%3Aopen+is%3Aissue+label%3A中級+milestone%3A課題+) と [`ボーナス`](https://github.com/yumemi-inc/android-engineer-codecheck/issues?q=is%3Aopen+is%3Aissue+label%3Aボーナス+milestone%3A課題+) に分けられています。課題の必須／選択は下記の表とします。\n\n|   | 初級 | 中級 | ボーナス\n|--:|:--:|:--:|:--:|\n| 新卒／未経験者 | 必須 | 選択 | 選択 |\n| 中途／経験者 | 必須 | 必須 | 選択 |\n\n課題 Issueをご自身のリポジトリーにコピーするGitHub Actionsをご用意しております。  \n[こちらのWorkflow](./.github/workflows/copy-issues.yml)を[手動でトリガーする](https://docs.github.com/ja/actions/managing-workflow-runs/manually-running-a-workflow)ことでコピーできますのでご活用下さい。\n\n課題が完成したら、リポジトリのアドレスを教えてください。\n\n## 参考記事\n\n提出された課題の評価ポイントに関しては、[こちらの記事](https://qiita.com/blendthink/items/aa70b8b3106fb4e3555f)に詳しく書かれてありますので、ぜひご覧ください。\n\n## AIサービスの利用について\n\nChatGPTなどAIサービスの利用は禁止しておりません。\n\n利用にあたって工夫したプロンプトやソースコメント等をご提出頂くことで、加点評価する場合もございます。 (減点評価はありません)\n\nまた、弊社コードチェック担当者もAIサービスを利用させていただく場合があります。\n\nAIサービスの利用は差し控えてもらいたいなどのご要望がある場合は、お気軽にお申し出ください。\n\u003c/details\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatsumo0922%2Fyumemi-codecheck","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmatsumo0922%2Fyumemi-codecheck","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatsumo0922%2Fyumemi-codecheck/lists"}