{"id":32635622,"url":"https://github.com/slothsoft/exercises-javascript","last_synced_at":"2026-07-01T12:32:01.783Z","repository":{"id":40936304,"uuid":"206956839","full_name":"slothsoft/exercises-javascript","owner":"slothsoft","description":"A couple of programming exercises I thought would be fun to try.","archived":false,"fork":false,"pushed_at":"2022-12-04T10:36:34.000Z","size":198,"stargazers_count":0,"open_issues_count":7,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-01-13T19:48:11.012Z","etag":null,"topics":["javascript","programming-exercise","programming-exercises"],"latest_commit_sha":null,"homepage":"http://slothsoft.de","language":"JavaScript","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/slothsoft.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}},"created_at":"2019-09-07T11:13:30.000Z","updated_at":"2020-10-13T22:02:22.000Z","dependencies_parsed_at":"2023-01-22T20:31:22.152Z","dependency_job_id":null,"html_url":"https://github.com/slothsoft/exercises-javascript","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/slothsoft/exercises-javascript","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slothsoft%2Fexercises-javascript","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slothsoft%2Fexercises-javascript/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slothsoft%2Fexercises-javascript/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slothsoft%2Fexercises-javascript/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/slothsoft","download_url":"https://codeload.github.com/slothsoft/exercises-javascript/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slothsoft%2Fexercises-javascript/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35007276,"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-07-01T02:00:05.325Z","response_time":130,"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":["javascript","programming-exercise","programming-exercises"],"created_at":"2025-10-31T00:57:22.296Z","updated_at":"2026-07-01T12:32:01.778Z","avatar_url":"https://github.com/slothsoft.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Exercises in JavaScipt\r\n\r\n[![MIT Licence](https://img.shields.io/github/license/jenkinsci/java-client-api.svg?label=License)](http://opensource.org/licenses/MIT) [![Build Status](https://travis-ci.org/slothsoft/exercises-javascript.svg?branch=master)](https://travis-ci.org/slothsoft/exercises-javascript)\r\n\r\n- **Author:** [Stef Schulz](mailto:s.schulz@slothsoft.de)\r\n- **Repository:** \u003chttps://github.com/slothsoft/exercises-javascript\u003e\r\n- **Open Issues:** \u003chttps://github.com/slothsoft/exercises-javascript/issues\u003e\r\n- **Website:** [Hosted on GitHub](https://slothsoft.github.io/exercises-javascript/)\r\n- **Test Report:** [Hosted on GitHub](https://slothsoft.github.io/exercises-javascript/test.html)\r\n\r\nA couple of programming exercises I thought would be fun to try.\r\n\r\n**Content:**\r\n- [New Exercise](#new-exercise)\r\n- [Exercises](#exercises)\r\n- [Test Report](#test-report)\r\n\r\n\r\n\r\n## New Exercise\r\n\r\nIt's not perfect yet, but for a new exercise do:\r\n\r\n1. Create a new exercise in _src/exercise/\u003cexercise\u003e.js_\r\n1. Create the test in test/exercise/\u003cexercise\u003e-test.js_\r\n1. Create the data (name and HTML mostly) for this exercise in  _src/exercise-data/\u003cexercise\u003e.js_\r\n1. Add an implementation of your exercise to _src/exercise-data.js_\r\n1. Add the copied exercise file as a script to the _index.html_\r\n\r\nOr you can use the script `node script/create-new-exercise.js` which does everything but the last step for you. \r\n\r\n\r\n\r\n## Exercises\r\n\r\n- **[Framed Words](https://slothsoft.github.io/exercises-javascript/?exercise=framed-words)** - Write a function that takes a list of strings an prints them, one per line, in a rectangular frame.\n- **[Hangman AI](https://slothsoft.github.io/exercises-javascript/?exercise=hangman-ai)** - Write a program that plays Hangman as good as possible.\n- **[Pig Latin](https://slothsoft.github.io/exercises-javascript/?exercise=pig-latin)** - Write function that translates a text to Pig Latin and back.\n- **[Spoon Language](https://slothsoft.github.io/exercises-javascript/?exercise=löffelsprache)** - The spoon language is the German pig latin. The language is based on the exchange of the vowels of a word by fixed abbreviations, whereby the consonants of the word remain untouched.\n\r\n\r\n\r\n\r\n## Test Report\r\n\r\nI'm really proud of my test report ([live version](https://slothsoft.github.io/exercises-javascript/test.html)):\r\n\r\n![test-report](readme/test-report.png)\r\n\r\nTo see how it is generated see this _[XSL Transformation File](script/test-report.xsl)_ and this npm module _[`@slothsoft/qunit-reporter`](https://www.npmjs.com/package/@slothsoft/qunit-reporter)_.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fslothsoft%2Fexercises-javascript","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fslothsoft%2Fexercises-javascript","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fslothsoft%2Fexercises-javascript/lists"}