{"id":43679341,"url":"https://github.com/btigi/cxp","last_synced_at":"2026-02-05T01:31:04.291Z","repository":{"id":310314637,"uuid":"1027084087","full_name":"btigi/cxp","owner":"btigi","description":"Gain xp and unlock achievements for using git","archived":false,"fork":false,"pushed_at":"2025-08-17T07:54:59.000Z","size":28,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-17T09:24:29.961Z","etag":null,"topics":["achievements","git"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/btigi.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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-27T09:25:05.000Z","updated_at":"2025-08-17T07:55:03.000Z","dependencies_parsed_at":"2025-08-17T09:24:36.072Z","dependency_job_id":"69520f3c-7037-44a7-9d14-371ec9676064","html_url":"https://github.com/btigi/cxp","commit_stats":null,"previous_names":["btigi/cxp"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/btigi/cxp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/btigi%2Fcxp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/btigi%2Fcxp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/btigi%2Fcxp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/btigi%2Fcxp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/btigi","download_url":"https://codeload.github.com/btigi/cxp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/btigi%2Fcxp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29105568,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-05T00:52:08.035Z","status":"ssl_error","status_checked_at":"2026-02-05T00:52:07.703Z","response_time":62,"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":["achievements","git"],"created_at":"2026-02-05T01:31:03.646Z","updated_at":"2026-02-05T01:31:04.260Z","avatar_url":"https://github.com/btigi.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Introduction\n\ncxp is a wrapper around git that tracks command usage and awards XP and achievements.\n\n# Download\n\nCompiled downloads are not available.\n\n# Compiling\n\nTo clone and run this application, you'll need [Git](https://git-scm.com) and [.NET](https://dotnet.microsoft.com/) installed on your computer. From your command line:\n\n```\n# Clone this repository\n$ git clone https://github.com/btigi/cxp\n\n# Go into the repository\n$ cd src\n\n# Build  the app\n$ dotnet build\n```\n\n# Usage\n\ncxp has two modes of working;\na) You can call cxp.exe directly\nb) You can rename cxp to git and use the appsettings.json file to configure the path to the real git executable\n\nIn either case, cxp is used by passing git commands, e.g., `cxp add myfile.txt`. cxp tracks commands used and awards XP. An achievement dialog is displayed in the console when an achievement is unlocked.\n\nThere are a few commands that are not passed through to git:\n\n`cxp profile` - displays your current XP, level, and achievements\n`cxp profile --stats` - displays your current XP, level, and achievements, and additional stats on command usage\n`cxp profile --clear` - clears all tracking\n\n# Customisation\n\nVarious settings related to achievements and XP awards can be customised in the files below, stored in the `cxpconfig` directory.\n\n- achievements.json\n\nContains the names of achievements and the XP award.\n\nThe milestones section tracks total command usage, and additional milestones can be added, e.g., a new commit milestone for 3 commits can be added:\n```json\n\"commit_3\": {\n      \"name\": \"Apprentice\",\n      \"description\": \"Complete 3 commits.\",\n      \"xp_reward\": 50\n}\n```\n\nThe combos section track commits on consecutive days, and additional combos can be added, e.g, a new milestone for commits on consecutive days can be added:\n```json\n\"combo_10\": {\n      \"name\": \"Disciplined Monk\",\n      \"description\": \"Commit on 10 consecutive days.\",\n      \"xp_reward\": 300\n}\n```\n\nThe hourly section tracks commits over the course of the day, and an additional hourly achievement can be added, e.g.\n```json\n\"hour_13\": {\n      \"name\": \"Lunchday Friar\",\n      \"description\": \"Commit code between 1 PM and 2 PM.\",\n      \"xp_reward\": 90\n}\n```\n\nThe builder section tracks the number of files added in an individual commit, and a new builder achievement can be added, e.g.\n```json\n\"builder_5\": {\n      \"name\": \"Novice Crafter\", \n      \"description\": \"Add 5 files to the repository.\",\n      \"xp_reward\": 50\n}\n```\n\nThe destroyer section tracks the number of files deleted in an individual commit, and a new destroyer achievement can be added, e.g.\n```json\n\"destroyer_5\": {\n      \"name\": \"Novice Destroyer\",\n      \"description\": \"Delete 5 files from the repository.\",\n      \"xp_reward\": 50\n}\n```\n\n\n- levels.json\n\nContains the level name and the total XP required to reach that level.\n\n\n- xp.json\n\nContains the XP award for each operation, per level.\n\n# Licencing\n\ncxp is licensed under the MIT license. Full license details are available in the license.md\n\n# Thanks\n\nThis project is inspired by [git achievements](https://github.com/lennart/git-achievements) and [gg-gamify](https://github.com/DeerYang/git-gamify)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbtigi%2Fcxp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbtigi%2Fcxp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbtigi%2Fcxp/lists"}