{"id":16920770,"url":"https://github.com/dherault/arccode","last_synced_at":"2025-03-17T07:31:55.189Z","repository":{"id":252338755,"uuid":"840129735","full_name":"dherault/arccode","owner":"dherault","description":"A role-playing game for developers","archived":false,"fork":false,"pushed_at":"2025-03-03T09:05:18.000Z","size":88852,"stargazers_count":20,"open_issues_count":3,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-10T10:47:08.522Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://arccode.dev","language":"TypeScript","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/dherault.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-08-09T03:18:45.000Z","updated_at":"2025-03-03T09:05:22.000Z","dependencies_parsed_at":"2024-08-09T05:25:00.104Z","dependency_job_id":"6281b5ac-6dbb-41bb-ae00-a2b3512d6c5f","html_url":"https://github.com/dherault/arccode","commit_stats":null,"previous_names":["dherault/arccode"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dherault%2Farccode","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dherault%2Farccode/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dherault%2Farccode/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dherault%2Farccode/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dherault","download_url":"https://codeload.github.com/dherault/arccode/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243852438,"owners_count":20358270,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":"2024-10-13T19:49:33.493Z","updated_at":"2025-03-17T07:31:55.183Z","avatar_url":"https://github.com/dherault.png","language":"TypeScript","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"readme":"# Arccode\n\n## What is it\n\nArccode is a role-playing game for developers. It works with a VSCode extension that collects the keywords you code (such as `let` or `function`) to turn them into XP and level ups!\n\n## Motivation\n\nCoding is inherently fun — it's an act of creation that yields visible results. However, it can also become repetitive and laborious. That's why I created Arccode: to bring joy to your day and shield you from monotony. By incorporating variable rewards and a sense of progress into coding, I believe we can make the experience even more enjoyable. So, have fun coding!\n\n## Data collected\n\nThe VSCode extension collects keyword metadata when the content of a file of a supported language is changed. This metadata is used to calculate the player's progress and to generate the game's content.\n\nHere is an example of such data:\n\n```json\n{\n  \"javascript\": {\n    \"function\": 4,\n    \"const\": 12\n  },\n  \"ruby\": {\n    \"def\": 3,\n    \"class\": 1\n  }\n}\n```\n\nAs you can see, the original code is not stored, only the keywords and their counts.\n\n## Installation\n\nTo install the dependencies run:\n```bash\nnpm run install:all\n```\n\n## App development\n\nTo start the development server for the web app:\n```bash\ncd arccode.dev\n```\n\nIn one terminal run:\n```bash\nnpm run emulators\n```\n\nIn another run:\n```bash\nnpm run dev\n```\n\n## Extension development\n\nTo develop on the extension open the `packages/arccode-vscode-extension` directory in a separate VSCode window (it's important).\n\nWatch for changes:\n```bash\nnpm run watch\n```\n\nThen open `src/extension.ts` and press F5 to launch another VSCode window with the extension loaded in development mode.\n\n## Package development\n\nAdditionally, you can edit any package under `packages/` and run `npm test` to test it.\n\n## Contributing\n\nPull requests, issues and feedback are welcome!\n\n### Adding a reward\n\nYou can add an unlockable reward to the game by submitting a PR.\nIt must include a 256x256 PNG image under `/arccode.dev/public/images/gears` and a new entry in the array in `/arccode.dev/src/data/gears.ts`.\n\n## License\n\n[GPLv3](https://www.gnu.org/licenses/gpl-3.0.html)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdherault%2Farccode","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdherault%2Farccode","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdherault%2Farccode/lists"}