{"id":15099471,"url":"https://github.com/jakub-stastny/oso","last_synced_at":"2026-01-07T06:06:51.037Z","repository":{"id":245561677,"uuid":"818617661","full_name":"jakub-stastny/oso","owner":"jakub-stastny","description":"My site landing pages.","archived":false,"fork":false,"pushed_at":"2025-03-03T19:18:38.000Z","size":2722,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-03T20:26:59.047Z","etag":null,"topics":["clojurescript","webcomponents"],"latest_commit_sha":null,"homepage":"https://jakubstastny.guru?utm_source=gh","language":"Clojure","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/jakub-stastny.png","metadata":{"files":{"readme":"README.org","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":"2024-06-22T10:53:48.000Z","updated_at":"2025-03-03T19:18:43.000Z","dependencies_parsed_at":"2025-03-03T20:33:58.688Z","dependency_job_id":null,"html_url":"https://github.com/jakub-stastny/oso","commit_stats":null,"previous_names":["jakub-stastny/jakubstastny","jakub-stastny/oso"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jakub-stastny%2Foso","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jakub-stastny%2Foso/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jakub-stastny%2Foso/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jakub-stastny%2Foso/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jakub-stastny","download_url":"https://codeload.github.com/jakub-stastny/oso/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245855328,"owners_count":20683483,"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":["clojurescript","webcomponents"],"created_at":"2024-09-25T17:21:26.547Z","updated_at":"2026-01-07T06:06:51.029Z","avatar_url":"https://github.com/jakub-stastny.png","language":"Clojure","funding_links":[],"categories":[],"sub_categories":[],"readme":"* About\nSource code of [[https://jakubstastny.guru?utm_source=gh][jakubstastny.guru]] written in ClojureScript using web components and generated by [[https://github.com/squint-cljs/cherry][Cherry]].\n\nThe compiled code that is actually deployed is in the [[https://github.com/jakub-stastny/oso/tree/rel][rel branch]].\n\n* Development\n#+begin_src shell\n  ./bin/serve   # Serve locally.\n  ./bin/watch   # Watch for changes, compile (runs bin/build-cljs, build-css \u0026 build-html).\n  ./bin/release # Compile \u0026 push to the rel branch.\n#+end_src\n\n* Tasks\n** V1\n*** TODO Consider CSS generation\n- Babashka Toolbox mentions https://github.com/paraseba/cssgen and https://github.com/cdaddr/gaka (Clj).\n\n*** TODO Newsletter\n\n*** TODO Design\n- Do something in Procreate. It should show my personality. Aquarius MC.\n\n*** TODO WebComponents README\n- Also polish the components, namely fa-icon.\n\n*** TODO Ping @borkdude\nHey @borkdude. I have a real-world example of a project that uses Cherry to write WebComponents: https://github.com/jakub-stastny/oso/tree/master/src/components It's my personal site, like whatever, the point is there are some Cherry-written WebComponents, they work, they are deployed and can be played with and inspected and there's a README where I documented various aspects of writing them.\n\nIf it serves you as an example, I can add the link to https://github.com/squint-cljs/cherry?tab=readme-ov-file#examples to send you a PR. If not, no worries, but I haven't seen too many WebComponents examples around.\n\n*** TODO Sponsorships\n- Buy me a coffee? I already have.\n- Patreon.\n- PayPal.\n- All these are in Reddit, add in the [[https://www.reddit.com/settings/profile?rdt=54962][settings]].\n\n** TODO Version with a blog\n*** TODO Override the back button behaviour\nSo things don't get reloaded.\n\n*** TODO Dynamic page URLs\nWe either:\n- No longer have all the various static HTML pages and only have 1 SPA-style HTML like index.html that links app.js.\n- Or we handle the blog as a separate app on a separate subdomain. This would be preferable for speed and other concerns.\n\n** Maybe consider\n*** Telegram contact\n- There's an icon in FA.\n\n*** Dark mode\n\n*** Set up build based on CLJ or Babashka\n- Squint works from CLJ, so Cherry should too (I asked @borkdude in #Cherry Slack).\n- Do I need separate repos for main/blog/wiki (think Netlify deploy).\n  - If so, I need a shared package that has config, components, CSS vars and whatnot.\n- Minify/Uglify JS \u0026 CSS on build. Possibly add timestamp to reload cache ?t=timestamp.\n- GA only in the production build (./bin/release passes an argument to the build scripts like ./bin/compile --release)\n- \u003cterm name=\"satori\"\u003e like abbr, but more interactive, consider desktop/mobile.\n- Build-time checks: make sure the components exists, compile it.\n- Move Cherry code into a ~component~ macro that will write the Cherry component on the disk. Keep everything in src, pages should be all generated (CSS? SVG?)\n\n* Links\n- [[https://github.com/jakub-stastny/jakubstastny/tree/rel?tab=readme-ov-file#links][Production links]] such as Netlify and Google Analytics console as well as links to pages that link the site (YouTube Studio and my Reddit).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjakub-stastny%2Foso","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjakub-stastny%2Foso","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjakub-stastny%2Foso/lists"}