{"id":48161167,"url":"https://github.com/punchagan/elfeed-offline","last_synced_at":"2026-04-04T17:25:10.578Z","repository":{"id":331777314,"uuid":"1088988365","full_name":"punchagan/elfeed-offline","owner":"punchagan","description":"Offline reading for elfeed posts using a Service Worker","archived":false,"fork":false,"pushed_at":"2026-02-26T11:18:40.000Z","size":834,"stargazers_count":8,"open_issues_count":11,"forks_count":2,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-26T11:36:38.925Z","etag":null,"topics":["elfeed","elfeed-rss-reader","offline-first","rss-reader"],"latest_commit_sha":null,"homepage":"https://elfeed-offline.muse-amuse.in/","language":"OCaml","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/punchagan.png","metadata":{"files":{"readme":"README.org","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-03T18:22:22.000Z","updated_at":"2026-02-26T11:18:43.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/punchagan/elfeed-offline","commit_stats":null,"previous_names":["punchagan/elfeed-offline"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/punchagan/elfeed-offline","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/punchagan%2Felfeed-offline","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/punchagan%2Felfeed-offline/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/punchagan%2Felfeed-offline/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/punchagan%2Felfeed-offline/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/punchagan","download_url":"https://codeload.github.com/punchagan/elfeed-offline/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/punchagan%2Felfeed-offline/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31407644,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-04T10:20:44.708Z","status":"ssl_error","status_checked_at":"2026-04-04T10:20:06.846Z","response_time":60,"last_error":"SSL_read: 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":["elfeed","elfeed-rss-reader","offline-first","rss-reader"],"created_at":"2026-04-04T17:25:10.339Z","updated_at":"2026-04-04T17:25:10.505Z","avatar_url":"https://github.com/punchagan.png","language":"OCaml","funding_links":[],"categories":[],"sub_categories":[],"readme":"* Elfeed-offline\n\nOffline reading for Elfeed posts using a Service worker\n\nI wrote a blog post [[https://punchagan.muse-amuse.in/blog/offline-friendly-elfeed-web-ui/][here]] with more details on the motivation to build it and an\noverview of how it works.\n\n** Installation Instructions\n\n- Configure [[https://github.com/skeeto/elfeed/][Elfeed]] and start the Elfeed web server using ~M-x elfeed-web-start~\n  in Emacs.\n\n- Install the latest version of [[https://nightly.dune.build/][dune nightly]]. (works only on Linux and MacOS,\n  currently)\n\n- Clone the project\n\n- ~dune~ (unlike ~opam~) doesn't automatically manage external (system)\n  dependencies. You can run ~dune show depexts~ to see the external\n  dependencies, and install them using your system's package manager (like\n  ~apt~, ~homebew~, etc.)\n\n- Run ~dune build~. This will install all the dependencies including an OCaml\n  compiler, and could take a while.\n\n** Usage Instructions\n\n- Set ~ELFEED_USERNAME~ and ~ELFEED_PASSWORD~ environment variables to restrict\n  access to yourself.\n\n- Run ~dune exec -- elfeed-offline~ to start the Dream server\n\n- Run the ~scripts/make-cert.sh~ script to create SSL certificates. This is\n  necessary for the service worker to work correctly, when accessing from a\n  different device than the server. Follow the instructions in the script to\n  copy and add the additional certificates to your mobile phone.\n\n- Access the server in your browser. Use ~https://\u003chostname\u003e.local:9000~ to\n  have everything working even with dynamic IPs.\n\n- Wait for a few seconds to make sure everything is cached in the browser for\n  offline reading.\n\n- Enjoy reading!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpunchagan%2Felfeed-offline","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpunchagan%2Felfeed-offline","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpunchagan%2Felfeed-offline/lists"}