{"id":43141215,"url":"https://github.com/jser/watch-list","last_synced_at":"2026-01-31T22:39:43.412Z","repository":{"id":37652599,"uuid":"329341943","full_name":"jser/watch-list","owner":"jser","description":"A collection of items that are explained in JSer.info.","archived":false,"fork":false,"pushed_at":"2026-01-22T02:23:06.000Z","size":8519,"stargazers_count":7,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-01-22T15:59:58.854Z","etag":null,"topics":["jser","rss"],"latest_commit_sha":null,"homepage":"https://jser.info/watch-list/","language":"TypeScript","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/jser.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,"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":"2021-01-13T14:59:26.000Z","updated_at":"2026-01-22T02:23:03.000Z","dependencies_parsed_at":"2023-10-15T02:32:41.833Z","dependency_job_id":"521c846a-8bd3-4aa9-9e97-830dbe8475f0","html_url":"https://github.com/jser/watch-list","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jser/watch-list","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jser%2Fwatch-list","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jser%2Fwatch-list/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jser%2Fwatch-list/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jser%2Fwatch-list/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jser","download_url":"https://codeload.github.com/jser/watch-list/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jser%2Fwatch-list/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28958348,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-31T22:20:19.638Z","status":"ssl_error","status_checked_at":"2026-01-31T22:18:07.061Z","response_time":128,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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":["jser","rss"],"created_at":"2026-01-31T22:39:42.680Z","updated_at":"2026-01-31T22:39:43.406Z","avatar_url":"https://github.com/jser.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# @jser/watch-list\n\nA collection of items that are explained in [JSer.info][].\n\nYou can found JavaScript resources from JSer.info [Dataset](https://github.com/jser/dataset).\n\n\u003chttp://jser.info/watch-list\u003e will be updated every day at 00:00.\n\n## Usage\n\n1. Visit \u003chttp://jser.info/watch-list\u003e\n2. Found interesting JavaScript resource!\n\n## Building\n\n```mermaid\ngraph TD\n    A[Watch List] --\u003e B[Feed List]\n    B --\u003e E[OPML List]\n    B --\u003e C[Web List]\n    C --\u003e D[Web Page]\n    D --\u003e E\n```\n\n- Watch List: 2年間のJSer.infoの記事を集計したもの\n- Feed List: Watch Listに対応するRSSフィード\n- OPML List: 流量を調整したOPML\n- Web List: ウェブサイト用\n\n### Watch List\n\nJSer.infoの記事を集計して、ウェブサイトのリストを生成する。\n\n1. Collect items in 2-years\n2. Count by item's domain and sort it\n3. Save to `data/watch-list.json`\n- FILTER: \n  - 汎用サイトは除外\n- SORT:\n  - countの大きい順\n\n### Feed List\n\nWatch Listから、各サイトのRSSフィードを取得してマッピングしたリストを生成する。\n\n1. Generate Watch List\n2. Visit each item's page and get RSS feeds\n3. Save RSS feeds to `data/feed-list.json` and `data/feed-list.opml`\n- FILTER: None\n- SORT:\n  - urlのhost名でソート\n\n📝 `data/feed-list.json` を直接編集することで、RSSフィードを手動でも変更できる。\n更新時は一度入ったフィードはずっと残るので、変更は手動で対応する必要がある。\n\n### OPML List\n\nFeed Listから、流量を調整したOPMLファイルを生成する。\n\n1. Generate OPML data from `data/feed-list.json`\n2. Save OPML file to `data/opml-list.opml`\n3. Save OPML as JSON to `data/opml-list.json`\n- FILTER: \n  - 購読向きのサイトのみに絞る \n  - 汎用ニュースは除外\n  - 流量が多いサイトは除外\n  - フォーラムは除外\n  - 重複しているサイトは除外\n- SORT:\n  - urlのhost名でソート\n\n### Web List\n\n\u003chttps://jser.info/watch-list/\u003e で利用するウェブサイト用のリストを生成する。\n\n1. Generate Watch List and Feed List\n2. Merge Watch List and RSS Feeds to `data/web-list.json`\n\n## Development\n\nUpdate Data:\n\n```\nnpm run update-data\n```\n\nRun following command:\n\n```\nnpm run dev\n```\n\n## Contributing\n\nPull requests and stars are always welcome.\n\nFor bugs and feature requests, [please create an issue](https://github.com/jser/watch-list/issues).\n\n1. Fork it!\n2. Create your feature branch: `git checkout -b my-new-feature`\n3. Commit your changes: `git commit -am 'Add some feature'`\n4. Push to the branch: `git push origin my-new-feature`\n5. Submit a pull request :D\n\n## Author\n\n- azu: [GitHub](https://github.com/azu), [Twitter](https://twitter.com/azu_re)\n\n## License\n\nMIT © azu\n\n[JSer.info]: https://jser.info\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjser%2Fwatch-list","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjser%2Fwatch-list","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjser%2Fwatch-list/lists"}