{"id":24018467,"url":"https://github.com/kieubaduong/kapo","last_synced_at":"2026-05-12T13:41:11.823Z","repository":{"id":253463850,"uuid":"707464969","full_name":"kieubaduong/kapo","owner":"kieubaduong","description":"Application for building a learning platform based on multiplayer  online games.","archived":false,"fork":false,"pushed_at":"2024-08-16T20:07:53.000Z","size":6935,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-25T21:34:51.447Z","etag":null,"topics":["angular-cli","angular16","angularts","material-ui"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/kieubaduong.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}},"created_at":"2023-10-20T00:53:04.000Z","updated_at":"2024-08-16T20:11:42.000Z","dependencies_parsed_at":"2024-08-16T22:25:27.607Z","dependency_job_id":"e1cc35c9-77ab-4734-aff2-5758a835a845","html_url":"https://github.com/kieubaduong/kapo","commit_stats":null,"previous_names":["kieubaduong/kapo"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kieubaduong/kapo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kieubaduong%2Fkapo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kieubaduong%2Fkapo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kieubaduong%2Fkapo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kieubaduong%2Fkapo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kieubaduong","download_url":"https://codeload.github.com/kieubaduong/kapo/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kieubaduong%2Fkapo/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32942139,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-12T09:19:52.626Z","status":"ssl_error","status_checked_at":"2026-05-12T09:17:33.438Z","response_time":102,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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":["angular-cli","angular16","angularts","material-ui"],"created_at":"2025-01-08T10:16:33.266Z","updated_at":"2026-05-12T13:41:11.791Z","avatar_url":"https://github.com/kieubaduong.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Kapo learning platform\n\nApplication for building a learning platform for students and teachers. Kahoot clone.\n\n## Features\n\n- ✅ User authentication\n- ✅ Create a quiz\n- ✅ Join a quiz\n- ✅ View quiz results\n- ✅ View quiz history\n- ✅ View quiz leaderboard\n- ✅ View quiz statistics\n\n## Technologies Used\n\n- Angular 16\n- Material UI\n- Layered Architecture\n\n## Project Structure\n\n```\nsrc/\n├── core/\n│   ├── DTO/\n│   ├── mapper/\n│   ├── models/\n│   ├── service/\n│   └── util.ts\n├── data/\n│   ├── model/\n│   ├── network/\n│   │   ├── api/\n│   │   ├── auth/\n│   │   │   ├── body/\n│   │   │   └── result/\n│   └── repository/\n├── navigation/\n├── ui/\n│   ├── app/\n│   │   ├── app-routing.module.ts\n│   │   ├── app.component.css\n│   │   ├── app.component.html\n│   │   ├── app.component.ts\n│   │   ├── app.module.ts\n│   │   ├── common/\n│   │   ├── directive/\n│   │   ├── enum/\n│   │   ├── home/\n│   │   ├── login/\n│   │   ├── players-report/\n│   │   └── features/\n│   ├── MainActivity.kt\n│   ├── common/\n│   └── theme/\n└── util/\n```\n\nThe project structure is organized into several layers:\n\n### Core Layer\n\nThe `core` layer contains essential components such as `DTO`, `mapper`, `models`, `service`, and utility functions (`util.ts`).\n\n### Data Layer\n\nThe `data` layer is structured to handle data-related operations. It includes directories for `model`, `network`, `api`, `auth`, `body`, `result`, and `repository`.\n\n### UI Layer\n\nThe `ui` layer manages the user interface components. It includes the main application files (`app`), common utilities (`common`), directives (`directive`), enumerations (`enum`), and various feature modules such as `home`, `login`, `players-report`, and other `features`. Additionally, it contains the main activity file (`MainActivity.kt`) and theme-related files (`theme`).\n\n### Navigation Layer\n\nThe `navigation` layer is designated for navigation-related files.\n\n### Util Layer\n\nThe `util` layer is intended for utility functions and extensions.\n\n## Screenshots\n\n|                                                     |                                                   |                                                     |\n| :-------------------------------------------------: | :-----------------------------------------------: | :-------------------------------------------------: |\n|                    Login Screen                     |                    Home Screen                    |                    Store Screen                     |\n|         ![](.github/screenshots/login.png)          |         ![](.github/screenshots/home.png)         |         ![](.github/screenshots/store.png)          |\n|                   Template Screen                   |                Add Question Screen                |                   Add Quiz Dialog                   |\n|        ![](.github/screenshots/template.png)        |       ![](.github/screenshots/question.jpg)       |        ![](.github/screenshots/add-quiz.png)        |\n|                    Report Screen                    |            Report Player Detail Screen            |            Report Detail Question Screen            |\n|         ![](.github/screenshots/report.png)         | ![](.github/screenshots/report-detail-player.png) | ![](.github/screenshots/report-detail-question.png) |\n|            Report Question Detail Screen            |                  Validate Screen                  |                  Game Login Screen                  |\n| ![](.github/screenshots/report-question-detail.png) |       ![](.github/screenshots/validate.png)       |       ![](.github/screenshots/game-login.png)       |\n|                     Host Screen                     |                   Lobby Screen                    |\n|          ![](.github/screenshots/host.png)          |        ![](.github/screenshots/lobby.png)         |\n\n## Prerequisites\n\n- Angular CLI 16.0.0\n- Node.js 16.13.0\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkieubaduong%2Fkapo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkieubaduong%2Fkapo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkieubaduong%2Fkapo/lists"}