{"id":14874808,"url":"https://github.com/ayoayco/Cozy","last_synced_at":"2025-09-20T00:33:31.254Z","repository":{"id":163997682,"uuid":"639427179","full_name":"ayoayco/Cozy","owner":"ayoayco","description":"  Your modern-day reading companion","archived":false,"fork":false,"pushed_at":"2025-06-26T20:12:13.000Z","size":1652,"stargazers_count":64,"open_issues_count":34,"forks_count":3,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-08-30T08:49:17.406Z","etag":null,"topics":["astrojs","reader","webapp"],"latest_commit_sha":null,"homepage":"https://cozy.pub","language":"Astro","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ayoayco.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"ayoayco"}},"created_at":"2023-05-11T13:03:30.000Z","updated_at":"2025-07-25T15:03:23.000Z","dependencies_parsed_at":"2024-03-11T16:44:03.275Z","dependency_job_id":"359d0645-7cbd-49aa-bda8-ca7c24cd2472","html_url":"https://github.com/ayoayco/Cozy","commit_stats":null,"previous_names":["ayoayco/cozy"],"tags_count":43,"template":false,"template_full_name":null,"purl":"pkg:github/ayoayco/Cozy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ayoayco%2FCozy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ayoayco%2FCozy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ayoayco%2FCozy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ayoayco%2FCozy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ayoayco","download_url":"https://codeload.github.com/ayoayco/Cozy/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ayoayco%2FCozy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":276022585,"owners_count":25571820,"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","status":"online","status_checked_at":"2025-09-19T02:00:09.700Z","response_time":108,"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":["astrojs","reader","webapp"],"created_at":"2024-09-20T19:01:04.321Z","updated_at":"2025-09-20T00:33:31.129Z","avatar_url":"https://github.com/ayoayco.png","language":"Astro","funding_links":["https://github.com/sponsors/ayoayco"],"categories":["Astro"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/user-attachments/assets/e49b56a7-cc0f-45a3-98e0-8bbcbd02a47c\" alt=\"COZY logo\" /\u003e\u003cbr /\u003e\n  Remove distractions. Save for later.\u003cbr /\u003e\n  Cozy is your modern-day reading companion.\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/ayoayco/cozy\"\u003e\n    \u003cimg alt=\"Last Commit\" src=\"https://img.shields.io/github/last-commit/ayoayco/cozy?logo=github\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/ayoayco/cozy-reader/releases/latest\"\u003e\n    \u003cimg alt=\"Alpha\" src=\"https://img.shields.io/github/package-json/v/ayoayco/cozy?label=alpha\" /\u003e\n  \u003c/a\u003e\u003cbr /\u003e\n\u003c/p\u003e\n\n## Why?\n\nVisiting websites in this 'modern' time is a paradox: standard Web technologies are better but most commercial websites are pretty terrible—not only because misinformation abounds online, but also because of Big Tech's personal data farming that puts us all at a disadvantage.\n\n[**Cozy**](https://cozy.pub) addresses this by putting people first by default: no tracking cookies will ever get into your browser, pay the minimum bandwidth to get information you need, and save everything on your browser for accessing them again later offline.\n\nWith Cozy: _The Web is Yours._\n\n## How is this app different?\n\nHere's what this project is building:\n\n1. An app that just works, no sign-ups or set-ups.\n2. Progressively enhanced experience. Main feature works even without JS. Removing distractions happen on the server and dead clean HTML gets delivered\n3. All your data are cached and does not leave your device; offline access is by default\n4. Cloud-sync will be opt-in, with your choice of provider\n5. Will also explore smart insights, such as:\n   1. text summarization\n   2. dominant emotion\n   3. other sources for lateral reading\n\n## Report bugs or contribute\n\nGet in touch:\n1. Chat via Discord: [Ayo's Projects](https://discord.gg/kkvW7GYNAp)\n1. Submit tickets via [SourceHut todo](https://todo.sr.ht/~ayoayco/astro-sw)\n1. Start a [GitHub discussion](https://github.com/ayoayco/astro-sw/discussions)\n1. Email me: [ayo@ayco.io](mailto:ayo@ayco.io)\n\n## Roadmap\n\n| Feature                | Status         | Version |\n| ---------------------- | -------------- | ------- |\n| Remove distractions    | ✅ DONE        | v0.0.x  |\n| Save viewed history    | ✅ DONE        | v0.1.x  |\n| Open links within Cozy | ✅ DONE        | v0.2.x  |\n| Offline access         | ✅ DONE        | v0.3.x  |\n| Set items as Favorites | 🛠️ In-progress | v0.4.x  |\n| Smart insights         |                | v0.5.x  |\n| Browser Extensions     |                |         |\n| Native Apps            |                |         |\n\n## Usage / Options\n\n**1. Copy, Paste**\n\nIt's simple. When you open an article and want to turn it into a more cozy reading experience, just copy the url and paste it to the app's address bar.\n\n**2. One-click Bookmark**\n\nA bookmarklet could run a script to open the current page for you on ~~Cozy~~. You can create this new bookmark titled 'Get cozy!' and put the following as value for the URL:\n\n```\njavascript:(function(){ window.open('https://cozy.pub/?url=%27 + window.location.href, %27_self%27); })();\n```\n\nThis is possible on all major browsers, including Safari on iOS (where I personally use this often). Some screenshots:\n\n| Firefox                                                                                                                     | Chrome                                                                                                                      |\n| --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| ![Screenshot from 2023-05-13 08-31-41](https://github.com/ayoayco/cozy/assets/4262489/9b296d4f-2722-483a-bbc2-431c6b2ae996) | ![Screenshot from 2023-05-12 23-32-08](https://github.com/ayoayco/cozy/assets/4262489/144b74f8-3949-46b9-849c-351e4af0ac12) |\n\n**3. One-click Extension then...**\n\nIt doesn't exist yet... I'll probably get to creating a browser extension at some point. But for now, PRs welcome! :)\n\n## Credits\n\nWe are thankful for all the building blocks provided by the following projects:\n\n1. [Astro](https://www.npmjs.com/package/astro) for our server-side rendering framework\n1. [@ayco/astro-sw](https://ayco.io/n/@ayco/astro-sw) for taking app's service worker, and injecting needed dynamic assets \u0026 variables\n1. [@ayco/astro-resume](https://ayco.io/n/@ayco/astro-resume) for serializing server data to be used in the client\n1. [@extractus/article-extractor](https://www.npmjs.com/package/@extractus/article-extractor) for the amazing scraping of articles\n1. [astro-iconify](https://www.npmjs.com/package/astro-iconify) for easily using icon-sets in [iconify](https://icon-sets.iconify.design/)\n1. [ultrahtml](https://www.npmjs.com/package/ultrahtml) for any cleanup and transformation we do on the received article content\n1. [fastify](https://fastify.dev/) for our production server and [nginx](https://nginx.org/) as reverse proxy\n\n## Contributing\n\nIf any of the above seems to need improvement for you, we are always eager to hear feedback and welcome all contributions. See our [CONTRIBUTING](/CONTRIBUTING.md) guide for more info.\n\nJoin our [Discord](https://discord.gg/kkvW7GYNAp) if you need help!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fayoayco%2FCozy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fayoayco%2FCozy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fayoayco%2FCozy/lists"}