{"id":23696839,"url":"https://github.com/davidkarnik/webgame","last_synced_at":"2026-01-17T07:15:21.298Z","repository":{"id":183178191,"uuid":"669485287","full_name":"DavidKarnik/webGame","owner":"DavidKarnik","description":"Web Game - Angular - Spring","archived":false,"fork":false,"pushed_at":"2024-08-01T11:31:32.000Z","size":1708,"stargazers_count":2,"open_issues_count":12,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-09T04:37:28.584Z","etag":null,"topics":["angular","ci-cd-pipeline","css","html","java","spring-boot","typescript"],"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/DavidKarnik.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-07-22T12:37:52.000Z","updated_at":"2024-11-12T02:53:02.000Z","dependencies_parsed_at":"2023-07-23T09:45:55.441Z","dependency_job_id":"d6f71bc5-6fc0-46e3-b32b-2d9cd06b7849","html_url":"https://github.com/DavidKarnik/webGame","commit_stats":null,"previous_names":["davidkarnik/webgame"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/DavidKarnik/webGame","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DavidKarnik%2FwebGame","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DavidKarnik%2FwebGame/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DavidKarnik%2FwebGame/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DavidKarnik%2FwebGame/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DavidKarnik","download_url":"https://codeload.github.com/DavidKarnik/webGame/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DavidKarnik%2FwebGame/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28503291,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-17T06:57:29.758Z","status":"ssl_error","status_checked_at":"2026-01-17T06:56:03.931Z","response_time":85,"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":["angular","ci-cd-pipeline","css","html","java","spring-boot","typescript"],"created_at":"2024-12-30T06:17:06.883Z","updated_at":"2026-01-17T07:15:21.277Z","avatar_url":"https://github.com/DavidKarnik.png","language":"TypeScript","readme":"# Web Game\n\nProject of simple clicking web game with a database and separate frontend and backend.\n\n#### Logic\nLoad main page with score == 0, blank nickname textbox, time set to 10 seconds and svg target in the middle. When target is clicked start time t=10 until t=0 and save nickname to temporary variable. If player click in target radius, add score++. When miss-click target do miss++. After every click change target position. When t=0 stop game, show results (modal), send data to backend, do logic and store them into the MySQL database. Restart.\n\n## Used Tools and Languages\n\n\u003c!--\n#### Frontend\n- [TypeScript](https://www.typescriptlang.org/)\n- [HTML, CSS](https://html.com/)\n- [WebStorm](https://www.jetbrains.com/webstorm/)\n- [Angular](https://angular.io/)\n#### Backend\n- [Java](https://www.java.com/en/)\n- [Spring Boot](https://spring.io/projects/spring-boot)\n- [Maven](https://maven.apache.org/)\n- [Postman](https://www.postman.com/)\n- [IntelliJ IDEA](https://www.jetbrains.com/idea/)\n#### Database\n- [MySQL](https://www.mysql.com/)\n- [MySQL Workbench](https://www.mysql.com/products/workbench/)\n#### Cloud hosting/ Deployment\n- [AWS](https://aws.amazon.com/)\n- [Ubuntu](https://ubuntu.com/aws)\n- [Docker](https://www.docker.com/)\n#### Git\n- [Git](https://git-scm.com/)\n- [Git Bash](https://gitforwindows.org/)\n- [GitHub](https://github.com/)\n- [GitHub Actions](https://github.com/features/actions)\n#### Tests\n- [Jacoco](https://www.jacoco.org/jacoco/trunk/index.html)\n- [SonarCloud](https://www.sonarsource.com/products/sonarcloud/)\n- [Karma](https://karma-runner.github.io/latest/index.html)\n--\u003e\n\n\u003cbr\u003e\n\u003cdiv align=\"center\"\u003e\n\n| Frontend | Backend | Database | Cloud hosting/ Deployment | Git | Tests |\n| --- | --- | --- | --- | --- | --- |\n| [TypeScript](https://www.typescriptlang.org/) | [Java](https://www.java.com/en/) | [MySQL](https://www.mysql.com/) | [AWS](https://aws.amazon.com/) | [Git](https://git-scm.com/) | [Jacoco](https://www.jacoco.org/jacoco/trunk/index.html) |\n| [HTML, CSS](https://html.com/) | [Spring Boot](https://spring.io/projects/spring-boot) | [MySQL Workbench](https://www.mysql.com/products/workbench/) | [Ubuntu](https://ubuntu.com/aws) | [Git Bash](https://gitforwindows.org/) | [SonarCloud](https://www.sonarsource.com/products/sonarcloud/) |\n| [Angular](https://angular.io/) | [Maven](https://maven.apache.org/) | JPA API | [Docker](https://www.docker.com/) | [GitHub](https://github.com/) | [Karma](https://karma-runner.github.io/latest/index.html) |\n| [WebStorm](https://www.jetbrains.com/webstorm/) | [IntelliJ IDEA](https://www.jetbrains.com/idea/) |  |  | [GitHub Actions](https://github.com/features/actions) |  |\n\n\u003c/div\u003e\n\n## Screenshots\n\n![App Screenshot](https://via.placeholder.com/700x100?text=Not+Added+Yet)\n\n## MySQL Database\n\n#### Get all players\n\n```\n  GET /api/players\n```\n\n| Parameter | Type     | Description                |\n| :-------- | :------- | :------------------------- |\n| `id` | `BIGINT` | **Required**. Player key |\n| `nickname` | `VARCHAR` | Player nickname |\n| `score` | `INT` | Player score |\n\n#### Get leaderboard (Top 10 players)\n\n```\n  GET /api/leaderboard\n```\n\nSELECT * FROM databaseName ORDER BY score DESC LIMIT 10\n\n## Running Tests\n\nTo run unit tests for frontend via [Karma](https://karma-runner.github.io), run the following command\n\n```bash\n  ng test\n```\n\nTo run tests for backend and generate test coverage report from [jacoco](https://www.jacoco.org/jacoco/trunk/index.html), run the following command\n\n```bash\n  mvn clean test\n```\n\n## Deployment\n\n#### Frontend\nRun `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The application will automatically reload if you change any of the source files. \u003cbr\u003e\nRun `ng build` to build the project. The build artifacts will be stored in the `dist/` directory.\n\n#### Backend\nRun `mvn package` in /webGame/webGame/ directory for build the project (/xxxFileName-0.0.x-SNAPSHOT.jar) \u003cbr\u003e\nRun `java -jar /xxxFileName-0.0.x-SNAPSHOT.jar` for start application server. Navigate to `http://localhost:8080/`.\n\n#### All-in-One\nUsing [Docker](https://www.docker.com/) for automated deployment. To deploy this project run\n\n```bash\n  *not implemented yet*\n```\n\n## Author\n\n- [Me, myself and I](https://github.com/DavidKarnik)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdavidkarnik%2Fwebgame","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdavidkarnik%2Fwebgame","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdavidkarnik%2Fwebgame/lists"}