{"id":30703028,"url":"https://github.com/moonwave99/moonwave99","last_synced_at":"2026-02-11T20:07:50.790Z","repository":{"id":310322907,"uuid":"1039450416","full_name":"moonwave99/moonwave99","owner":"moonwave99","description":null,"archived":false,"fork":false,"pushed_at":"2026-01-31T09:12:28.000Z","size":1508,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-31T22:10:25.930Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"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/moonwave99.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-17T08:58:27.000Z","updated_at":"2026-01-31T09:12:31.000Z","dependencies_parsed_at":"2025-08-17T11:25:16.017Z","dependency_job_id":"268268a2-7097-4134-b4ca-24b8a8a71542","html_url":"https://github.com/moonwave99/moonwave99","commit_stats":null,"previous_names":["moonwave99/moonwave99"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/moonwave99/moonwave99","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moonwave99%2Fmoonwave99","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moonwave99%2Fmoonwave99/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moonwave99%2Fmoonwave99/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moonwave99%2Fmoonwave99/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/moonwave99","download_url":"https://codeload.github.com/moonwave99/moonwave99/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moonwave99%2Fmoonwave99/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29343683,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-11T18:58:20.535Z","status":"ssl_error","status_checked_at":"2026-02-11T18:56:44.814Z","response_time":97,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: 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":[],"created_at":"2025-09-02T16:53:51.868Z","updated_at":"2026-02-11T20:07:50.778Z","avatar_url":"https://github.com/moonwave99.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Hello!\n\nMy name is Diego, I am a full-stack software engineer and educator. Here you can find a sample of my personal projects:\n\n## Libraries\n\n-   [test-fs](https://github.com/moonwave99/test-fs) - a tiny filesystem helper test library that creates actual files\n-   [waffel](https://moonwave99.github.io/waffel/) - static site generation done tasty\n-   [goffre](https://moonwave99.github.io/goffre/) - static site generation done tastier\n-   [readme.com](https://github.com/moonwave99/readme.com) - From `README.md` to `index.html` in one touch, ready to be published online\n\n## Education\n\nYou can access [my free JavaScript course here](https://moonwave99.github.io/javascript-from-zero).\n\nSome curated material:\n\n-   [Keyboard shortcut demo](https://ntmhg.csb.app/) - learn to type like a pro!\n-   [Keyboard practice playground](https://hk1mkw.csb.app/) - try the shortcuts to rearrange song lyrics\n-   [Sync vs Async task visualizer](https://xwxy7p.csb.app/) - demo of serial vs. parallel task execution\n-   [JSON viewer](https://grqxtp.csb.app/) - learn how to access nested JSON structures by clicking on the corresponding key\n-   [cURL is fun!](https://vh3qr-3000.csb.app/) - command the app from your terminal via cURL\n-   [Server List / Detail / Search example](https://t7x010-8080.csb.app/) - mamma mia!\n-   [JavaScript string methods playground](https://6cpqpr.csb.app/) - see how they behave\n-   [CSS Flexbox Example](https://msrws7.csb.app/) - start with big colourful boxes to clearly see the outline of the document\n\n### React Examples\n\n-   [Responsive Grid](https://y0vl1d-3000.csb.app/) - an adaptive grid, fully keyboard navigable\n-   [Memory Game](https://github.com/moonwave99/examples/tree/main/react/memory-game) - play Memory in your browser!\n-   [Multi-column navigable layout](https://github.com/moonwave99/examples/tree/main/react/keyboard-focus-manager) - proof of concept for a power-user-friendly interface\n-   [Packing List with Edit Mode](https://wxq6rf.csb.app/) - see how to handle more complex state cases\n-   [Advanced Search Filters](https://w68shq.csb.app/) - pipe multiple filters over a set of data to display just what you need\n-   [Arrange Tasks in status columns](https://m2s3g9.csb.app/) - `groupBy` made visual and editable\n-   [Display Sport Stats from given data](https://psd65t-5173.csb.app/) - it works exactly like you think\n-   [Accessible styled form](https://sst5vx.csb.app/) - little tweaks to defaults go a long way\n-   [Multiple Selection + localStorage](https://codesandbox.io/p/sandbox/multiple-selection-localstorage-66vxrd) - a common UI scenario explained\n\n---\n\n![Memory Game](https://github.com/moonwave99/examples/blob/main/react/memory-game/screenshot.png)  \n[Memory Game](https://stackblitz.com/github/moonwave99/examples/tree/main/react/memory-game)\n\n![Accessible form](./assets/accessible_form.png)  \n[Accessible form](https://sst5vx.csb.app/)\n\n![Responsive Grid](./assets/responsible_navigable_grid.png)  \n[Responsive Grid](https://y0vl1d-3000.csb.app/)\n\n## Music Projects\n\n-   [Fretboard.js](https://moonwave99.github.io/fretboard.js/) - a guitar/bass fretboard SVG visualisation\n-   [Playa](https://moonwave99.github.io/playa/) - the music player that thinks in albums\n-   [Villalobos Practice Companion](https://moonwave99.github.io/villa-lobos-trainer/) - practice the Étude No. 1 with different accents\n-   [Just Noise](https://moonwave99.github.io/justnoise/) - if you need to zone out\n-   [Chord Cirlces](https://moonwave99.github.io/music-experiments/circle-chords) - representation of chord tones\n-   [Jazz Trainer](https://moonwave99.github.io/two-five-one-trainer/) - practice your comping over a drum track\n-   [FlatFive](https://flatfive.netlify.app/sketch?p=IyBoZWxsbyEKIyBzZWUgdGhlIEhlbHAgc2VjdGlvbiB0byBrbm93IGhvdyB0byB3cml0ZSB5b3VyIHNrZXRjaAprZXk6IEVtCm1ldGVyOiA0LzQKdGl0bGU6IE15IE5ldyBTa2V0Y2gKCiMgd3JpdGUgY2hvcmRzIGJlbG93IG9uIHNlcGFyYXRlIGxpbmVzCkVzdXMyCkFtNgpDIzExCkI3IzUKRW05) - hear piano chord voicings in your browser\n-   [Shoegaze.it](https://shoegaze.netlify.app/en/) - history of the beautiful noise\n-   [Dreampop.it](https://dreampop.it) - history of dreamp-pop music\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoonwave99%2Fmoonwave99","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmoonwave99%2Fmoonwave99","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoonwave99%2Fmoonwave99/lists"}