Commit Graph

8674 Commits

Author SHA1 Message Date
Tony 1d7f3dc8fc
feat(route): add caicai blog (#21741)
* feat(route): add caicai blog

* fix: favicon
2026-04-15 01:56:50 +08:00
Tony bd2f18c5c7
feat(route): add pixel update bulletins (#21740) 2026-04-15 00:43:31 +08:00
github-actions[bot] cb0e63de6c style: auto format 2026-04-14 15:33:50 +00:00
github-actions[bot] ebfe021b50 style: auto format 2026-04-14 15:15:05 +00:00
github-actions[bot] 7cb1e37da9 style: auto format 2026-04-14 00:39:34 +00:00
Tony cef5c68b9c refactor: add GraphQL annotation to queries for auto formatting in oxfmt v0.42
79a525cbd3
2026-04-14 08:38:54 +08:00
Tony 33996701af refactor: fix first() and undefined fallback abuse 2026-04-14 08:26:28 +08:00
Tony 2897f515a3
feat: disable IPv6 (#21719) 2026-04-13 23:45:08 +08:00
Chris Sauermann 42d7a77eaf
fix(elamigos): fix parsing after webpage layout update (#21705) 2026-04-13 05:53:44 +08:00
Tony 0f7808f345
docs: add sports category (#21704)
* feat: add sports category

* fix: fix runyeah
2026-04-13 04:21:20 +08:00
Tony c8ed099850
fix(route/gameapps): fix selectors (#21703) 2026-04-13 03:48:33 +08:00
Ananya 2af8e30e1c
feat(route): add Castbox route (#21700)
* feat(route): add Castbox route

* remove User Agent and switch item_image

* remove missed use of trueUA

* remove unnecessary import

* fix typo
2026-04-13 02:19:09 +08:00
Exat1979 72d4ee7ab4
feat: add projectjav actress (#21698) 2026-04-11 22:14:37 +08:00
Tony d375d79d8b
feat(route): add fcbayern (#21697) 2026-04-11 04:53:55 +08:00
github-actions[bot] e9a1bcb8e5 style: auto format 2026-04-10 11:17:45 +00:00
eve2ptp c0785bdc05
feat: add xhamster (#21640)
* feat xhamster

* style: auto format

* add maintainers

* remove useless header

* replace html() to text()

* Use U+002d instead of U+2013

* Use regex to match the string instead of replacing it

* no author

* remove link & author from description

* remove caching

* Apply suggestion

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Evilmass <21218296+Evilmass@users.noreply.github.com>
2026-04-10 19:16:55 +08:00
github-actions[bot] 1826ba4245 style: auto format 2026-04-10 04:35:18 +00:00
eve2ptp 45b13f09b5
feat: add jable (#21641)
* feat jable.tv

* fix jable
Unexpected string concatenation of literals.

* add maintainers

* remove useless headers

* only use find() once

* refactor

* remove unnecessary caching

---------

Co-authored-by: Evilmass <21218296+Evilmass@users.noreply.github.com>
2026-04-10 04:34:43 +00:00
Tony 86bc9553c7
feat(route): add iapp (#21682) 2026-04-10 09:37:26 +08:00
Rigo 718e37465a
fix: claude code changelog query (#21679)
* fix: claude code changelog query

* fix: route parseDate rule#13

* fix: cleanup .first() calls
2026-04-10 05:30:54 +08:00
Tony 25fa1279d8
feat(route): add nanhua (#21680)
* feat: add nanhua

* fix(radar): encode URI components for type parameters in report URL
2026-04-10 05:16:47 +08:00
dependabot[bot] ecd202c980
chore(deps-dev): bump got from 14.6.6 to 15.0.0 (#21591)
* chore(deps-dev): bump got from 14.6.6 to 15.0.0

Bumps [got](https://github.com/sindresorhus/got) from 14.6.6 to 15.0.0.
- [Release notes](https://github.com/sindresorhus/got/releases)
- [Commits](https://github.com/sindresorhus/got/compare/v14.6.6...v15.0.0)

---
updated-dependencies:
- dependency-name: got
  dependency-version: 15.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps): remove form-data dependency

* chore: make fakeGot function async

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Tony <TonyRL@users.noreply.github.com>
2026-04-10 00:57:30 +08:00
Cod1doc 013e869ce8
fix(telegram): preserve access auth params in media links (#21503)
* fix(telegram): preserve access auth params in media links

* test(telegram): sort imports in channel regression test

* chore: remove channel.test.ts

---------

Co-authored-by: jack <jack@example.com>
2026-04-09 19:59:11 +08:00
Tony 7b6ced8ab4
feat(route): add wkjyqh (#21666)
* feat(route): add wkjyqh

* fix: more accurate pubDate
2026-04-09 09:29:09 +08:00
Tony b8b2065e57
feat(route): add trendforce (#21665)
* feat(route): add trendforce

* fix: pubDate
2026-04-09 09:00:10 +08:00
Tony 79a6e644e1
feat(route/thepaper): update sidebar sections (#21664) 2026-04-09 07:56:59 +08:00
Qi He (Heki) 42c6b49a1d
feat(route): add Polymarket (#21445)
* feat: add Polymarket

* feat(route): add Polymarket routes using Gamma API

Routes:
- /polymarket/events/:tag_slug? - List events by category
- /polymarket/event/:slug - Event details with markets
- /polymarket/search/:query - Keyword subscription
- /polymarket/series/:slug? - Recurring event series
- /polymarket/user/:address - User trading activity
- /polymarket/positions/:address - User positions
- /polymarket/leaderboard/:category?/:timePeriod? - Trader rankings

APIs used:
- Gamma API (gamma-api.polymarket.com): events, series
- Data API (data-api.polymarket.com): activity, positions, leaderboard

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* feat(route): add Polymarket routes using Gamma API and Data API

Routes:
- /polymarket/events/:tagSlug? - List events by category
- /polymarket/event/:slug - Event details with markets
- /polymarket/search/:query - Keyword subscription
- /polymarket/series/:slug? - Recurring event series
- /polymarket/user/:address - User trading activity
- /polymarket/positions/:address - User positions
- /polymarket/leaderboard/:category?/:timePeriod? - Trader rankings

APIs used:
- Gamma API (gamma-api.polymarket.com): /events/pagination, /events/slug, /series, /public-search
- Data API (data-api.polymarket.com): /activity, /positions, /v1/leaderboard

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 23:05:05 +08:00
Mervyn Zhan 8f74424c39
fix(route/eastmoney): using `.html()` instead of `.text()` as description content (#21655)
fix #21654
2026-04-08 10:16:38 +08:00
Wenhao Deng 2933f894ac
feat(route/thinkingmachines): add news route for Thinking Machines Lab (#21609)
* route(thinkingmachines): add news route for Thinking Machines Lab

Add route for Thinking Machines Lab (thinkingmachines.ai) news page.
Founded by Mira Murati (ex-OpenAI CTO), the lab publishes news about
their AI research and products.

Closes #0

* fix: use import type and sort imports for oxlint

* fix: correct import sort order per simple-import-sort

* fix: strip title/author/pubDate heading from description, remove unnecessary try/catch

Address review feedback:
- Remove .post-heading block from description (title, author, pubDate have dedicated fields)
- Remove try/catch wrapper (requests do not throw errors)

* fix: remove article fallback and strip paginator from description
2026-04-07 03:01:16 +08:00
Guorui Yu d8eaee5889
fix(route/twitter): dynamically resolve GraphQL query IDs and fix production CookieAgent (#21544)
* fix(route/twitter): dynamically resolve GraphQL query IDs from Twitter JS bundles

Twitter rotates GraphQL query IDs every 2-4 weeks, causing 404 errors.
Instead of relying solely on hardcoded IDs, fetch and cache the latest
query IDs from Twitter's client-web main.js bundle at runtime.

- Add gql-id-resolver module to extract queryId/operationName pairs
- Cache resolved IDs using CACHE_CONTENT_EXPIRE (Redis supported)
- Fall back to hardcoded IDs if dynamic resolution fails
- Update init() to trigger resolution before first API call

Signed-off-by: yuguorui <yuguorui@pku.edu.cn>

* fix(route/twitter): use undici.fetch directly to preserve CookieAgent dispatcher

Both ofetch and the global wrappedFetch (request-rewriter) drop the
dispatcher option when constructing a new Request object, which prevents
the CookieAgent from attaching cookies in production builds. Use
undici.fetch directly for Twitter API requests to preserve the dispatcher.

Signed-off-by: yuguorui <yuguorui@pku.edu.cn>

---------

Signed-off-by: yuguorui <yuguorui@pku.edu.cn>
2026-04-06 22:46:29 +08:00
humgent 8ac41e7a39
fix(xiaohongshu): fix broken img tag in user notes description (#21638) 2026-04-06 19:43:46 +08:00
github-actions[bot] 22e11c6164 style: auto format 2026-04-06 01:44:44 +00:00
Yunchen Bai 39cbdc3af8
feat(route/infoq): add article cover url (#21608)
* feat(route/infoq): add article cover url

* feat(route/infoq): move cover image to description

* fix: fix code format issue

* fix: remove unused whitespace
2026-04-06 09:44:09 +08:00
colaa-boom 99e31ebd1f
fix: Update javdb domain in utils.ts (#21392)
更新一些备用域名
2026-04-04 17:55:29 +08:00
LinxHex e334550d61
feat(route): add Peter Wunder achievements badges feed (#21580)
* feat(route): add Peter Wunder achievements badges feed

* fix(route): address review feedback for Peter Wunder achievements
2026-04-04 14:36:25 +08:00
MMA 6288f06b97
fix(route/dailypush): use puppeteer (#21160)
* use puppeteer

* fix typo

* fix fetch page one by one

* use deprecated method

* bypass Disallow await inside of loops

* use one browser for the whole route

* bypass Disallow await inside of loops

* use one browser even if marked deprecated by doc

* use Promise.all()

* fix new destory -> destroy
2026-04-04 05:00:09 +08:00
Tony b0dd795e36
feat(route/castanet): add Castanet news (#21607)
* feat(route/castanet): add Castanet news

* fix(route/castanet): correct spelling of 'West Kelowna' to 'West-Kelowna'
2026-04-03 00:00:47 +08:00
Tony d42e134b99
fix(wechat2rss): update item parsing to use isoDate and remove unused finishArticleItem (#21604) 2026-04-02 22:02:45 +08:00
Tony f2ed334627
fix(route/gameapps): add item category extraction and clean up unwanted elements (#21605) 2026-04-02 21:42:05 +08:00
Tony 39058beeb3
feat(router/acfun): add embed option (#21589) 2026-04-02 05:41:05 +08:00
Tony 0f705a566c style: use oxlint-plugin-eslint for unimplemented eslint rules 2026-04-02 05:29:27 +08:00
Tony bbae3e2346
fix(route/anthropic): anthropic posts data (#21588) 2026-04-01 22:42:57 +08:00
dependabot[bot] 3fb2954b18
chore(deps-dev): bump the oxc group across 1 directory with 4 updates (#21583)
* chore(deps-dev): bump the oxc group with 4 updates

Bumps the oxc group with 4 updates: [@oxlint/plugins](https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint-plugins), [oxfmt](https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt), [oxlint](https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint) and [oxlint-tsgolint](https://github.com/oxc-project/tsgolint).


Updates `@oxlint/plugins` from 1.57.0 to 1.58.0
- [Release notes](https://github.com/oxc-project/oxc/releases)
- [Changelog](https://github.com/oxc-project/oxc/blob/main/CHANGELOG.md)
- [Commits](https://github.com/oxc-project/oxc/commits/apps_v1.58.0/npm/oxlint-plugins)

Updates `oxfmt` from 0.42.0 to 0.43.0
- [Release notes](https://github.com/oxc-project/oxc/releases)
- [Changelog](https://github.com/oxc-project/oxc/blob/main/npm/oxfmt/CHANGELOG.md)
- [Commits](https://github.com/oxc-project/oxc/commits/oxfmt_v0.43.0/npm/oxfmt)

Updates `oxlint` from 1.57.0 to 1.58.0
- [Release notes](https://github.com/oxc-project/oxc/releases)
- [Changelog](https://github.com/oxc-project/oxc/blob/main/npm/oxlint/CHANGELOG.md)
- [Commits](https://github.com/oxc-project/oxc/commits/oxlint_v1.58.0/npm/oxlint)

Updates `oxlint-tsgolint` from 0.18.1 to 0.19.0
- [Release notes](https://github.com/oxc-project/tsgolint/releases)
- [Commits](https://github.com/oxc-project/tsgolint/compare/v0.18.1...v0.19.0)

---
updated-dependencies:
- dependency-name: "@oxlint/plugins"
  dependency-version: 1.58.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: oxc
- dependency-name: oxfmt
  dependency-version: 0.43.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: oxc
- dependency-name: oxlint
  dependency-version: 1.58.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: oxc
- dependency-name: oxlint-tsgolint
  dependency-version: 0.19.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: oxc
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore: use jsPlugins for unicorn

* style: unicorn auto-format template-indent

* style: add unicorn v64 rules

* Revert "style: unicorn auto-format template-indent"

This reverts commit 5f4dbf4346465c9a9dcaf1b19ce5211e1d61bd78.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Tony <TonyRL@users.noreply.github.com>
2026-04-01 22:10:13 +08:00
Tony 683121d071
feat(route): add tw-nongmu (#21578)
* feat(route): add tw-nongmu

* fix: add image

* Update market.ts

* Update market.ts
2026-04-01 07:16:50 +08:00
Tony a61dc787e6
fix(utils/wechat-mp): fix APP_MSG_PAGE metadata fetching (#21577)
* fix(utils/wechat-mp): fix APP_MSG_PAGE metadata fetching

* fix(tests/wechat-mp): update HTML string formatting in ExtractMetadata test
2026-04-01 06:00:17 +08:00
Tony 1fe4e8a4ae
feat(core): add honeybadger support (#21574)
* feat(core): add honeybadger support

* feat(honeybadger): configure Honeybadger to disable uncaught error tracking

* feat(tests): add info logger mock to app-bootstrap tests

* test: fix mock value

* test: mock honeybadger as well
2026-04-01 01:10:12 +08:00
Tony 222322befc
fix(routes): fix feed images (#21573) 2026-03-31 22:44:27 +08:00
Tony 2dbf56997c
fix(route/gameapps): update selectors (#21572) 2026-03-31 22:18:35 +08:00
HaZy-Gaming 92b8da23a9
fix(github): update topics route selector to fix empty route (#21560)
解决GitHub Topics路由"Error: this route is empty"问题。
2026-03-31 04:31:39 +00:00
Tony a2861cdd4f
fix: update rss-parser patch to support other compressions (#21561) 2026-03-30 22:22:24 +00:00