v0.1.4 · 17 June 2026 · MIT
The minute,
on one page.
cron-rs-web is the web dashboard for cron-rs. The cron-rs-web-server binary embeds the Next.js UI, listens on port 3000, and shows task state, runs, and hook events live over SSE.
brew tap dickwu/tap
brew install cron-rs-web
brew install dickwu/tap/cron-rs-web
Eight every-minute tasks
What the browser shows
Five screens, plus login. Search opens with Command-K or Ctrl-K. Press n, when a text field is not focused, to start a new task. The layout adapts to desktop, tablet, and mobile.
- Binary
- cron-rs-web-server
- Listen
- 0.0.0.0:3000
- API
- same host :9746
- Unit
- cron-rs-web.service
- License
- MIT
| Path | What you do there |
|---|---|
| / | Dashboard. Live task state, run status, and hook events over SSE. The summary shows total tasks, runs in 24 hours, success rate, and active timers. Charts cover run activity and failure rate. |
| /tasks | Create, edit, enable, disable, trigger, and delete tasks, with a schedule preview. Select several tasks and enable, disable, or delete them together. |
| /tasks?id=… | Task detail. Add, edit, and delete hooks for that task. Hook editing stays here. |
| /hooks | Read-only catalog. It lists only tasks that already have configured hooks. |
| /runs | Filterable run history. stdout and stderr open in a terminal-style viewer. |
| /settings | Review runtime state and manage the saved API URL override. |
| /login | JWT login for the cron-rs account created by cron-rs init. The default username is admin. You can point this page at another API URL. |
Install, then open port 3000
The product README installs the dashboard with Homebrew on macOS or Linux. cron-rs itself stays a separate Linux daemon. The tap README says it requires systemd and is not in Homebrew.
-
Install cron-rs on the Linux host
Download a release from github.com/dickwu/cron-rs. Initialize, import existing schedules, and install the user service.
-
Install cron-rs-web
Use the Homebrew commands at the top of this page, or download a release archive below. The formula’s homepage is the source repository. It installs the
cron-rs-web-serverbinary. -
Start the dashboard
Run it in the foreground, or install
cron-rs-web.serviceas a user systemd unit. The binary binds0.0.0.0and port3000unless you override them. -
Sign in
Open the host on port 3000. The page calls the cron-rs API on that same host at port 9746, then asks for the account
cron-rs initcreated.
cron-rs init --password 'change-this-password' --host 0.0.0.0
cron-rs import
cron-rs service install --host 0.0.0.0 --start
cron-rs-web-server service install --host 0.0.0.0 --start
cron-rs-web-server
Replace the password before you run init. The foreground command is the one in the tap README. It connects to the cron-rs API at localhost:9746. Open http://localhost:3000 on that machine, or http://your-server:3000 after the service install.
Use a different API URL
The server flag and the two environment variables below are the documented overrides. The login page and Settings can also store an API URL.
cron-rs-web-server service install --host 0.0.0.0 --api-url http://api-host:9746 --start
CRON_RS_WEB_HOST, CRON_RS_WEB_PORT, CRON_RS_API_URL, and CRON_RS_WEB_API_URL configure a non-interactive start.
Service commands
cron-rs-web-server service status
cron-rs-web-server service restart
cron-rs-web-server service uninstall
Serve the UI from cron-rs on port 9746
Build the static dashboard, then build the sibling cron-rs checkout with embed-web. The daemon serves the UI on the API port. Routes under /api/v1/ stay the API. Other browser routes fall back to the dashboard.
cd ../cron-rs-web
npm ci
npm run build
cd ../cron-rs
cargo build --release --features embed-web
Development
Node.js is for development. npm run dev starts Next.js on port 3000 and proxies API calls to the cron-rs daemon at localhost:9746.
cron-rs daemon
npm install
npm run dev
Release archives for v0.1.4
| System | Archive |
|---|---|
| macOS Apple Silicon | cron-rs-web-aarch64-apple-darwin.tar.gz |
| macOS Intel | cron-rs-web-x86_64-apple-darwin.tar.gz |
| Linux x86_64 | cron-rs-web-x86_64-unknown-linux-gnu.tar.gz |
| Linux ARM64 | cron-rs-web-aarch64-unknown-linux-gnu.tar.gz |
| Linux x86_64, static | cron-rs-web-x86_64-unknown-linux-musl.tar.gz |
The formula in dickwu/homebrew-tap currently records version 0.1.0. It installs the Apple and GNU Linux archives for that recorded version. The musl archive is on GitHub releases and is not listed in the formula. Latest source and release: v0.1.4.
Questions
What is cron-rs-web?
cron-rs-web is the web dashboard for cron-rs. It monitors and manages systemd timers from a browser. Production runs as one binary, cron-rs-web-server, with the Next.js UI embedded. No Node.js runtime is required to serve it.
How do I install it?
On macOS or Linux, tap the Homebrew repository and install the formula: brew tap dickwu/tap, then brew install cron-rs-web. The same formula installs in one step with brew install dickwu/tap/cron-rs-web. Homebrew places cron-rs-web-server on your PATH. Release archives are also on GitHub for macOS Apple Silicon, macOS Intel, Linux x86_64, Linux ARM64, and a static Linux x86_64 musl build.
Does the formula install cron-rs?
No. The dickwu/tap README says cron-rs is Linux-only, requires systemd, and is not available via Homebrew. Install the cron-rs daemon from its GitHub releases, then start this dashboard against it.
Which API does the dashboard use?
By default the page connects to the cron-rs API on the same browser host at port 9746. Opening http://your-server:3000 uses http://your-server:9746. Pass --api-url to cron-rs-web-server, or set CRON_RS_API_URL or CRON_RS_WEB_API_URL. The login page can point at another API URL, and Settings can save that override.
What can I do after I sign in?
The dashboard streams task state, run status, and hook events over SSE. On Tasks you create, edit, enable, disable, trigger, and delete timers, with a schedule preview, and you can enable, disable, or delete several tasks at once. Hooks are added, edited, and deleted on the task page. The Hooks page only lists tasks that already have hooks. Runs is a filterable history with a terminal-style viewer for stdout and stderr. Settings reviews runtime state and stores an API URL override. The dashboard also charts run activity and failure rate, and the layout adapts to desktop, tablet, and mobile.
Can the cron-rs daemon serve this UI itself?
Yes. Build the static dashboard with npm run build in cron-rs-web, then build cron-rs with cargo build --release --features embed-web. That daemon serves the UI on the same host and port as the API. The API stays under /api/v1/, and other browser routes fall back to the dashboard.