{"id":23792504,"url":"https://github.com/se2p/code-critters","last_synced_at":"2026-06-18T06:32:35.602Z","repository":{"id":80478187,"uuid":"595110897","full_name":"se2p/code-critters","owner":"se2p","description":"A block-based mutation testing tool to teach software testing","archived":false,"fork":false,"pushed_at":"2023-01-30T12:30:27.000Z","size":5166,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-21T13:30:32.695Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","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/se2p.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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-01-30T12:21:48.000Z","updated_at":"2024-10-06T00:57:35.000Z","dependencies_parsed_at":null,"dependency_job_id":"a03313d9-5945-4c2a-a102-24db9bdf9170","html_url":"https://github.com/se2p/code-critters","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/se2p/code-critters","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/se2p%2Fcode-critters","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/se2p%2Fcode-critters/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/se2p%2Fcode-critters/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/se2p%2Fcode-critters/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/se2p","download_url":"https://codeload.github.com/se2p/code-critters/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/se2p%2Fcode-critters/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34479553,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-18T02:00:06.871Z","response_time":128,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2025-01-01T18:35:28.307Z","updated_at":"2026-06-18T06:32:35.597Z","avatar_url":"https://github.com/se2p.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Code Critters\n\nThis is Code Critters, another mutation testing game. \n\n## Installation\n\n### Requirements\n\n- Apache Maven\n- MySQL  \nor\n- Docker and docker-compose  \n\n\n- npm or yarn (only for developement)\n- provide a `.env` file following the `.env.example`\n\nFor starting the game, you only need a MySQL Server (e.g. [MariaDB](https://mariadb.org/)) running. \nfor the sake of simplicity, the project contains a docker-compose file that starts a MySql\ninstance with\n```bash\ndocker-compose up -f docker-compose-local.yml\n```\nA db-dump containing some demo data has also been added to the project. \nFor development you also need an installation of npm (or yarn) to load frontend dependencies.\n\n### Run from within an IDE\n\nSince this project is build with the Spring framework, you can run the Project from\nwithin your IDE. Only some frontend dependencies need to \nbe loaded. This needs to be done in the `resources/static` folder and you can either use npm: \n```bash\nnpm install\n```\nor yarn:\n```bash\nyarn install\n```\n\n#### Configuration\n\nTo Configure the system, you need to edit the `application.properties` in the `resources` \nfolder. This file also holds the database settings (Initially this data belongs to the docker\nconfiguration). \n\n## Run Complete Application with Docker-Compose\n\nTo start the whole application, including frontend, backend and database execute the `docker-compose.yml`\nfile with the following command:\n\n```bash\ndocker-compose up\n```\nMake sure to have build the most recent `Code-Critters-1.0.1.jar` via `maven package`\n\n### Development\n\nDuring development, the easiest way to work on Code Critters is first to start only the database via docker\n```bash\ndocker-compose -f docker-compose-local.yml up\n```\nand then run the spring application as usually via the main method in `Code_CrittersServiceApplication`.\n\nWhen updating the database schema you can use flyway migrations. To do so, move your migration script\nto the folder ``src/main/resources/db/migration`` using the correct file naming schema (https://www.red-gate.com/blog/database-devops/flyway-naming-patterns-matter)\nand consecutive version numbers in this format ``YYYYMMDD``\n\n## DevOps\n\n### Deployment Using Docker\n\n- locally run ``maven package`` to get latest jar file `Code-Critters-1.0.1.jar` \n- go on the hosting VM and replace the old jar from the VM with the new one in the `target` folder\n- execute ``docker-compose stop``\n- git pull latest changes from master and run ``docker-compose up --build --detach``\n- NOTE: do not delete local files ``config/certbot`` from VM (responsible for ssl certificate)\n\n- Usually not required because certificate renewal happens automatically, but \nif there is a need to manually recreate ssl certificates, remove certbot files and \nrun ``bash init-letsencrypt.sh``\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fse2p%2Fcode-critters","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fse2p%2Fcode-critters","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fse2p%2Fcode-critters/lists"}