DIYgod mirror
Go to file
DIYgod 48ce50d034
release(mobile): Release v0.5.7 (#5061)
* release(desktop): release v1.11.0

* docs(desktop): restore mobile release inputs

* fix(desktop): use js-yaml ESM exports

* fix(desktop): use js-yaml ESM exports

* fix(desktop): package jsdom runtime dependencies

* fix(desktop): package jsdom runtime dependencies

* fix(desktop): use js-yaml ESM exports for Windows metadata

* build(deps): bump actions/setup-node from 6 to 7 (#5046)

Bumps [actions/setup-node](https://github.com/actions/setup-node) from 6 to 7.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(ssr): escape hydration data in inline scripts

* fix(ssr): restore shared user profiles

* fix: make Codex worktree setup portable

* fix(mobile): restore dark mode text colors

* fix(styles): avoid DaisyUI border token collision

* fix(desktop): restore category chevron rotation

* fix(subscription): recover past-due Stripe checkout

* fix(desktop): dismiss share popover after actions

* fix(mobile): handle RSSHub subscription limit errors

* fix(desktop/ipc): allowlist URL scheme protocols in openURLScheme (#5056)

The 'integration.openURLScheme' IPC method invokes 'shell.openExternal'
with a renderer-supplied string after only checking that it contains
'://'. Electron's documentation explicitly warns that passing untrusted
URLs to 'shell.openExternal' is unsafe: schemes such as 'file://',
'smb://', 'ms-msdt:', 'search-ms:', 'jar:', 'res:', 'javascript:',
'data:' and 'vbscript:' have well-known abuse chains (local file
disclosure, NTLM credential theft over SMB on Windows, MSDT/Follina-style
RCE, etc.). Because the renderer process can also reach this IPC via any
XSS sink in untrusted RSS feed content, the previous validation was not
sufficient.

Replace the substring check with strict URL parsing plus an allowlist of
protocols that match the integration use-cases documented in the UI
(Obsidian, Bear, Drafts, Things, Notion, DEVONthink) plus generic
http/https/mailto. All other protocols are rejected with a clear error.

Adds vitest cases for representative dangerous schemes (verifying that
'shell.openExternal' is never invoked) and for every scheme shipped as a
built-in example, so future regressions on either side are caught.

* chore(ci): format integration URL scheme test

* fix(mobile): use product IDs for Apple IAP verification

* docs(desktop): prepare release inputs

* docs(mobile): prepare release metadata

* release(mobile): release v0.5.7

* docs(mobile): restore desktop release inputs

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Sebastion <sebastion@sebastion.dev>
2026-07-31 18:32:29 +08:00
.agents docs(release): clarify mobile OTA runtime selection 2026-05-29 21:48:12 +08:00
.codex/environments fix: make Codex worktree setup portable 2026-07-25 15:31:42 +08:00
.github build(deps): bump actions/setup-node from 6 to 7 (#5046) 2026-07-15 09:00:49 +08:00
.vscode fix: update tag filter to include mobile and desktop versions 2025-08-04 17:52:20 +08:00
api feat: new domain folo.is 2025-07-03 13:13:42 +08:00
apps docs(mobile): restore desktop release inputs 2026-07-31 16:31:48 +08:00
docs/superpowers chore(deps): update frontend dependencies (#5038) 2026-07-10 22:36:12 +08:00
icons/mgc feat: refine spotlight settings and highlighting 2026-04-09 13:45:05 +08:00
locales fix(mobile): handle RSSHub subscription limit errors 2026-07-26 07:29:14 +08:00
packages fix(styles): avoid DaisyUI border token collision 2026-07-25 20:17:55 +08:00
patches chore(deps): update frontend dependencies (#5038) 2026-07-10 22:36:12 +08:00
plugins chore(deps): update frontend dependencies (#5038) 2026-07-10 22:36:12 +08:00
scripts refactor: migrate to client sdk (#4480) 2025-09-17 00:12:54 +08:00
wiki chore: format 2025-06-23 18:36:50 +08:00
.cursorignore feat: ai features (#4040) 2025-07-16 21:54:32 +08:00
.easignore fix(ci): preserve mobile web assets for local eas builds 2026-04-14 15:00:53 +08:00
.editorconfig chore: fix file format & use .gitattributes (#4082) 2025-07-07 19:58:29 +08:00
.gitattributes chore(deps): update frontend dependencies (#5038) 2026-07-10 22:36:12 +08:00
.gitignore fix: make Codex worktree setup portable 2026-07-25 15:31:42 +08:00
.npmrc chore: update dependencies 2025-02-19 15:27:20 +08:00
.nvmrc chore(deps): update frontend dependencies (#5038) 2026-07-10 22:36:12 +08:00
.prettierignore chore(deps): update frontend dependencies (#5038) 2026-07-10 22:36:12 +08:00
.prettierrc.mjs fix: restore frontend ci for better-auth upgrade 2026-03-16 21:35:14 +08:00
.worktreeinclude fix: make Codex worktree setup portable 2026-07-25 15:31:42 +08:00
AGENTS.md docs: add post-change checks (#4791) 2026-01-01 16:28:03 +08:00
CODE_OF_CONDUCT.md
CONTRIBUTING.md chore: update license 2025-12-28 18:27:30 +08:00
LICENSE chore: update license 2025-12-28 18:27:30 +08:00
README.md docs: remove status badge from readme 2026-07-03 16:49:39 +08:00
SECURITY.md
buildServer.json fix(desktop): update styling for UpdateNotice component 2025-05-03 21:47:58 +08:00
changelogithub.config.ts fix: update tag filter to include mobile and desktop versions 2025-08-04 17:52:20 +08:00
conductor.json chore: add Conductor setup/run scripts (#4788) 2026-01-01 14:02:04 +08:00
eslint.config.mjs chore(deps): update frontend dependencies (#5038) 2026-07-10 22:36:12 +08:00
package.json chore(deps): update frontend dependencies (#5038) 2026-07-10 22:36:12 +08:00
pnpm-lock.yaml fix(mobile): restore dark mode text colors 2026-07-25 18:20:36 +08:00
pnpm-workspace.yaml chore(deps): update frontend dependencies (#5038) 2026-07-10 22:36:12 +08:00
tsconfig.json chore: enable noUncheckedIndexedAccess, better type check (#2608) 2025-01-18 22:35:23 +08:00
tsslint.config.ts chore(deps): update frontend dependencies (#5038) 2026-07-10 22:36:12 +08:00
turbo.json feat(landing): merge landing app into monorepo (#4881) 2026-02-26 11:33:16 +08:00
vercel.json chore: update URLs to use folo.is domain in configuration files 2025-10-30 09:04:39 +08:00
vitest.workspace.js refactor: upgrade react 19 and react native 0.79 (#3661) 2025-05-07 16:30:30 +08:00
vitest.workspace.ts

README.md

Logo

Folo

   




Folo Mobile Folo Desktop

As they say, your thoughts are what you read—and weve been consuming noisy feeds for too long! Folo organizes content into one timeline, keeping you updated on what matters, noise-free. Share lists, explore collections, and enjoy distraction-free browsing.

👋🏻 Getting Started & Join Our Community

Whether for users or professional developers, Folo will be your open information playground. Please be aware that Folo is currently under active development, and feedback is welcome for any issue encountered.

Feel free to try it using the following methods:

Operating System Source
Any Browser
iOS App Store
Android Google Play App Store
macOS Mac App Store App Store
Windows Microsoft Store App Store
Linux App Store

You can also install using the following methods maintained by our community:

Discord Join our Discord server to connect with developers, request features, and receive support.
Follow us on X/Twitter for product updates and to join in on reward activities.
!IMPORTANT]

**Star Us**, You will receive all release notifications from GitHub without any delay \~

Image

Performance Stats of RSSNext/Folo - Last 28 days

Features

Customized Information Hub

Subscribe to a vast range of feeds and curated lists. Curate your favorites and keep track of what matters most to you.

AI At Your Fingertips

A smarter and more efficient browsing with AI-powered features like translation, summary, and more.

Dynamic Content Support

Because we know content is more than just text. From articles to videos, images to audio — Folo gets it all covered.

More Than Just An App

This isnt just another app. Folo is a community — introducing a new era of openness and community-driven experience.

🤝 Contributing

You are welcome to join the open source community to build together, please check our Contributing Guide for more details.

🔏 Code signing policy

Folo for Windows uses free code signing provided by SignPath.io, a certificate by SignPath Foundation.

Folo for macOS and iOS is signed and notarized by Apple Developer Program.

All released files are verified with GitHub artifact attestations to ensure their provenance and integrity.

📝 License

Folo is licensed under the GNU Affero General Public License version 3 with the addition of the following special exception:

All content in the icons/mgc directory is copyrighted by https://mgc.mingcute.com/ and cannot be redistributed.