{"id":23383818,"url":"https://github.com/mdwheele/javascript-gym","last_synced_at":"2025-07-03T09:33:42.573Z","repository":{"id":71078646,"uuid":"451998054","full_name":"mdwheele/javascript-gym","owner":"mdwheele","description":"A training ground for JavaScript developers","archived":false,"fork":false,"pushed_at":"2022-02-03T14:52:02.000Z","size":46,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-08T09:58:19.301Z","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":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mdwheele.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":"2022-01-25T18:36:30.000Z","updated_at":"2022-01-25T20:58:33.000Z","dependencies_parsed_at":"2023-07-05T12:47:11.299Z","dependency_job_id":null,"html_url":"https://github.com/mdwheele/javascript-gym","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mdwheele/javascript-gym","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mdwheele%2Fjavascript-gym","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mdwheele%2Fjavascript-gym/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mdwheele%2Fjavascript-gym/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mdwheele%2Fjavascript-gym/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mdwheele","download_url":"https://codeload.github.com/mdwheele/javascript-gym/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mdwheele%2Fjavascript-gym/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263300876,"owners_count":23445315,"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-12-21T22:30:06.747Z","updated_at":"2025-07-03T09:33:42.548Z","avatar_url":"https://github.com/mdwheele.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# JavaScript Gym\n\nThe purpose of this repository is to give ourselves an area to practice JavaScript skills in a way that is very targeted and not connected to any particular project. Our goal is to focus on building foundational knowledge and muscle memory.\n\n## How's it work?\n\nThe project is organized into a set of simple [CodeKata](http://codekata.com) that we can use to practice and develop different skills. The idea is that every morning (or whenever you want, but regularly), you open the project, reset any previous work, and implement solutions for each Kata. Tomorrow, you'll do it again and on the next day you'll... wait for it... do it again!\n\nTo \"judge\" our solutions, we use a collection of tests written using [Jest](https://jestjs.io). These tests will help guide you towards what to work on next and once everything is \"green\" (the tests are passing), then you're done until the next day!\n\nWhen we are learning a new concept or skill, it is very easy (and completely normal) to stumble over the small stuff. I've watched senior developers with years of experience stumble over the syntax of a `for`-loop while on a video chat because: 1) We don't use those\nall the time and 2) stage fright. It's okay! By practicing these \"mundane\" skills over and over, day after day, we build muscle memory so that our brains can focus on the task at \nhand rather than where to put a curly-brace.\n## Getting Started\n\n1. Clone this repository (e.g. `git clone git@github.com:mdwheele/javascript-gym.git`)\n1. Install Gym dependencies by running `npm clean-install` (or `npm ci`, for short)\n1. Start the test-suite by running `npm test`.\n1. Write code to make tests pass!","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmdwheele%2Fjavascript-gym","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmdwheele%2Fjavascript-gym","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmdwheele%2Fjavascript-gym/lists"}