Self-hosted team chat running on Cloudflare Workers, with realtime messaging, a two-way Telegram bridge, and server-side encrypted messages and files.
Defiabell/yixi
A self-hosted, web-based take on the One Sec app: a ten-second breathing page before distracting apps open, plus a daily goals page, running on Cloudflare's free tier.
Open-source alternative to:One Sec
- Stars
- 100
- Forks
- 4
- Open issues
- 0
- Last commit
- 29 days ago
What is it?
yixi intercepts distracting apps through an iOS Shortcut. Before the app opens, the phone shows a breathing page that counts down ten seconds, then offers a "never mind" option first and a "continue opening" link second, and records which one you chose. The same account also includes a Today page that lists your top goals for the coming weeks, each with today's sub-tasks, a seven-day check-in strip, and a button that jumps into the app where the work happens.
The whole service runs as one Cloudflare Worker backed by one D1 (SQLite) database, and the project states it fits inside Cloudflare's free tier. Pages, sessions, and tokens are handled server-side with WebCrypto, and the interface is bilingual in Chinese and English. A third feature, Surf, walks the user through a ten-minute pause when an urge appears.
The project is built as a nudge rather than an enforcement tool: the automation can be turned off in a couple of taps. Deployment takes roughly fifteen minutes and requires a Cloudflare account and Node 18+.
Key features
- 01Breathing page with a ten-second countdown before a chosen app opens, via iOS Shortcuts.
- 02Asymmetric exit buttons: "never mind" as the primary option, "continue opening" as a secondary link.
- 03Today page showing top goals, their sub-tasks for the day, and a seven-day check-in strip.
- 04Surf flow for a ten-minute pause when an urge appears, with a 30-day review page.
- 05Runs on a single Cloudflare Worker and D1 database, with no runtime dependencies.
- 06Chinese and English interface, with an MIT license.
Use cases
- Someone who wants a gentle pause before opening social or video apps on their iPhone.
- Self-hosting a personal digital-wellbeing tool without paying for a server.
- Keeping a few multi-week goals visible each morning with daily sub-tasks and quick jumps into work apps.
- Studying how a small Cloudflare Worker plus D1 app is structured, including its deployment pattern.
Quick start
- 1
Install dependencies
npm install - 2
Sign in to Cloudflare
npx wrangler login - 3
Create the D1 database, then put its database_id into wrangler.toml and pages/wrangler.toml
npx wrangler d1 create yixi - 4
Apply migrations and deploy the Worker
npm run deploy
Things to know
- Deploying requires a Cloudflare account and the multi-step setup takes about fifteen minutes, including two deployments.
- Lost TOKEN_KEY makes users' gate tokens unrecoverable, so you must back it up.
- It is a nudge rather than a blocker, since users can disable the automation in two taps.
- Chinese is the default language, and the README's deployment advice is specific to Cloudflare's hosting.
Topics
FAQ
- What is yixi?
- A self-hosted, web-based take on the One Sec app: a ten-second breathing page before distracting apps open, plus a daily goals page, running on Cloudflare's free tier. yixi intercepts distracting apps through an iOS Shortcut. Before the app opens, the phone shows a breathing page that counts down ten seconds, then offers a "never mind" option first and a "continue opening" link second, and records which one you chose. The same account also includes a Today page that lists your top goals for the coming weeks, each with today's sub-tasks, a seven-day check-in strip, and a button that jumps into the app where the work happens.
- Is yixi free to use? What license does it have?
- yixi is open source under the MIT license. Check the license terms before using it in commercial products.
- Is yixi still maintained?
- Actively maintained. The last commit to yixi was on Sep 21, 2026.
- What can I use yixi for?
- Someone who wants a gentle pause before opening social or video apps on their iPhone. Self-hosting a personal digital-wellbeing tool without paying for a server. Keeping a few multi-week goals visible each morning with daily sub-tasks and quick jumps into work apps. Studying how a small Cloudflare Worker plus D1 app is structured, including its deployment pattern.
- How do I install yixi?
- Install dependencies: npm install Sign in to Cloudflare: npx wrangler login Create the D1 database, then put its database_id into wrangler.toml and pages/wrangler.toml: npx wrangler d1 create yixi Apply migrations and deploy the Worker: npm run deploy
- Where can I get yixi?
- The source code and installation instructions are on GitHub: https://github.com/Defiabell/yixi
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A self-hosted, Cloudflare Workers-compatible platform packaged as a single Rust binary for running Workers, KV, D1, R2 and more on one machine.
Self-hosted cross-device image and text pool on Cloudflare Workers and R2, accessed through a PWA with no app install.
Open-source backend platform for building apps, with Auth, Databases, Storage, Functions, Messaging, Realtime and Hosting, self-hostable via Docker.
Open-source Go and Python runtime for serverless AI workloads, covering GPU inference endpoints, sandboxes, and background tasks.
A git server where each repository is a Durable Object, running on Cloudflare Workers or self-hosted on celld.