baa3712fa2
Add getApp command and gitUrl helper
2026-03-01 14:57:39 -08:00
56db56976b
re-do the whole thing on git
2026-03-01 13:29:01 -08:00
71091f20a1
Add emojis to URLs and Logs tabs
2026-03-01 10:16:39 -08:00
64d5295fde
Merge branch 'global-tools'
2026-03-01 10:16:01 -08:00
82c8fc42da
Add dashboard support for tool apps with iframe embedding
2026-03-01 10:10:49 -08:00
52cf99b56d
Replace global with apps and dashboard app properties
2026-03-01 09:48:36 -08:00
fdc14a5021
fix race condition
2026-03-01 09:40:35 -08:00
c7f8f09ba9
Add global field to filter tool tabs
2026-03-01 09:35:05 -08:00
2046af1407
center metrics
2026-03-01 09:29:48 -08:00
7ee9163f76
Merge branch 'ssh-cli-auto'
2026-02-28 23:04:54 -08:00
5f1de651eb
Use AsyncLocalStorage for abort signal propagation
2026-02-28 22:48:38 -08:00
460d625f60
Simplify SSH access via dedicated cli user
2026-02-28 22:38:39 -08:00
a87f0a9651
Add abort signals; rename guest to toes-cli
2026-02-28 13:34:14 -08:00
d2b0eb410f
fix tool iframes
2026-02-28 12:58:21 -08:00
Chris Wanstrath
74f9062a89
fix reconnect
2026-02-27 15:35:49 -08:00
Chris Wanstrath
55316027c0
heartbeat
2026-02-27 15:14:43 -08:00
141622f86f
Add test123 app and support tunnelUrl in Urls
2026-02-27 07:28:58 -08:00
526678e87a
Add active variant flex column styles
2026-02-27 07:26:15 -08:00
dc570cc6e9
Add SSH shell and NSS guest user support
2026-02-27 07:25:46 -08:00
d29e306e61
Merge branch 'mobile'
2026-02-26 20:37:52 -08:00
671f51ca0c
Replace app selector modal with mobile sidebar state
2026-02-26 20:37:50 -08:00
d082af4e33
Add width 100% to active style
2026-02-26 20:21:51 -08:00
9bce15b871
Add flex layout to LogsSection container
2026-02-26 19:59:37 -08:00
7ab27f2767
Replace chevron with hamburger menu for app selector
2026-02-26 19:58:42 -08:00
45b1903e6b
Use URL-based routing instead of local state
2026-02-26 19:43:18 -08:00
68274d8651
Intercept link clicks for client-side routing
2026-02-26 18:49:48 -08:00
98a1c1ad97
Add client-side router, use URLs for navigation
2026-02-26 11:40:50 -08:00
6d02f1db3f
Make stopped tiles link to app page instead of nowhere
2026-02-26 07:28:05 -08:00
1a71656508
app tiles
2026-02-25 20:33:02 -08:00
363a82a845
Add icon span and conditional URL/name display
2026-02-25 19:58:01 -08:00
271bf018b8
Add tabbed dashboard with URLs/Logs/Metrics views
2026-02-25 19:55:19 -08:00
Chris Wanstrath
3cbb25a82a
yeah
2026-02-25 15:35:01 -08:00
87d0ff50c1
Centralize hostname config in shared module
2026-02-25 12:55:41 -08:00
0499060676
Use dynamic hostname instead of toes.local
2026-02-25 12:11:43 -08:00
51e42dc538
Fix memory usage via /proc/meminfo on Linux
2026-02-24 19:05:04 -08:00
f910664828
always exclude sandlot
2026-02-24 10:27:35 -08:00
365b5d2365
Add global gitignore support to file exclusion logic
2026-02-22 07:48:41 -08:00
236e8ff38e
normalize app names to valid subdomains via toSubdomain utility
2026-02-19 20:04:23 -08:00
4aebd6a087
ensure app data directory exists before spawning process
2026-02-19 19:51:39 -08:00
36c7913b6c
Move Install CLI section below WiFi settings
2026-02-19 19:41:13 -08:00
b0323c3655
Skip server-changed check for new apps with no remote manifest
2026-02-19 19:33:50 -08:00
7ea806b778
Add paw print emoji to install.sh status messages
2026-02-19 19:20:12 -08:00
9e4629ac2f
Merge branch 'the-dist'
2026-02-19 19:16:27 -08:00
aaf4660816
Delegate build logic to external script, simplify build target representation
2026-02-19 19:16:12 -08:00
18cf4243fa
Build CLI binaries on-demand when requested via /dist/:file endpoint
2026-02-19 13:33:58 -08:00
a041f137c0
Add centered layout variant to Settings page header and content
2026-02-19 13:13:32 -08:00
fca779b064
Reorganize collapsed sidebar to show hamburger button without logo and add dashboard shortcut icon to AppSelector
2026-02-19 10:12:48 -08:00
8e71699ceb
Move install CLI command from dashboard header to settings page
2026-02-19 10:07:33 -08:00
5b1a970da1
Merge branch 'toes-in-sidebar'
2026-02-19 09:40:10 -08:00
09e21c738b
Keep logo link visible when sidebar is collapsed, showing icon only
2026-02-19 09:39:58 -08:00
971ebef21c
dashboard
2026-02-19 09:28:15 -08:00
071f1a02b5
install toes cli
2026-02-18 20:46:56 -08:00
c5672e57bd
cleanup
2026-02-17 14:47:47 -08:00
888f12a8f1
tweak proxy
2026-02-16 21:04:11 -08:00
96083b640f
all apps are http apps
2026-02-16 13:25:24 -08:00
fecc074757
fix proxy bugs
2026-02-16 13:10:04 -08:00
3736202020
again
2026-02-16 09:43:47 -08:00
82ff55ba99
guess and check
2026-02-16 09:36:10 -08:00
1dc7b76b31
proxy fixes
2026-02-16 09:34:19 -08:00
caac6877d7
dashboard mobile fixes
2026-02-16 09:22:26 -08:00
86dacb0a74
subdomains
2026-02-15 17:30:41 -08:00
9c0762c882
mobile dashboard
2026-02-15 17:22:52 -08:00
f085d78fc1
fix starting and restarts
2026-02-15 13:51:58 -08:00
6f2f07059d
we handle reconnect elsewhere
2026-02-15 12:16:27 -08:00
6ba3cdaf14
share CLI, persistent tunnels
2026-02-15 10:33:03 -08:00
7f2343fc04
fix app updating
2026-02-15 09:13:53 -08:00
f3cc26252c
better status check
2026-02-15 09:10:04 -08:00
d1caf3fbf4
0.0.8
2026-02-15 09:03:45 -08:00
1015e20cf9
[cron] reload jobs on renames/deploys
2026-02-15 08:44:48 -08:00
bf14ba4ba1
new event API
2026-02-15 08:36:58 -08:00
271ff151a1
single out toes logs on dashboard
2026-02-15 07:47:41 -08:00
9649666195
claude too
2026-02-14 08:07:01 -08:00
fabdd084cb
default .gitignore for templates
2026-02-14 08:06:40 -08:00
6afefcec5b
simplify toes config
2026-02-14 07:37:56 -08:00
1b563106fe
max versions, remove old node_modules
2026-02-13 20:34:20 -08:00
c10ebe3c98
kill old processes on boot
2026-02-13 09:59:20 -08:00
2f4d4f5c19
new emoji
2026-02-13 09:40:07 -08:00
720c0e76fb
dashboard
2026-02-13 09:02:21 -08:00
Claude
50e5c97beb
Add system vitals gauges and unified log stream to dashboard
...
- Add /api/system endpoints for CPU, RAM, and disk metrics (SSE stream)
- Add /api/system/logs for unified log stream from all apps (SSE stream)
- Create Vitals component with three gauges: arc (CPU), bar (RAM), circular (Disk)
- Create UnifiedLogs component with real-time scrolling logs and status highlighting
- Update DashboardLanding with stats, vitals, and activity sections
Design follows Dieter Rams / Teenage Engineering aesthetic with neutral palette.
https://claude.ai/code/session_013L9HKHxMEoub76B1zuKive
2026-02-13 16:41:21 +00:00
543b5d08bc
favicon
2026-02-13 16:41:20 +00:00
Claude
a91f400100
Add dashboard landing page with clickable logo navigation
...
The Toes logo now links to a system-wide dashboard view that shows
app and tool counts. This is the default view when first opening
the web app.
https://claude.ai/code/session_013L9HKHxMEoub76B1zuKive
2026-02-13 16:41:20 +00:00
Chris Wanstrath
6912bc0cdf
bad
2026-02-12 16:30:41 -08:00
Chris Wanstrath
4a31d7bb69
tunnels
2026-02-12 16:24:45 -08:00
75af5f3d31
toes start/stop/restart feedback
2026-02-12 12:36:42 -08:00
512d9fe96b
Merge remote-tracking branch 'github/main'
2026-02-12 12:16:50 -08:00
Chris Wanstrath
ee9c4a1d0a
Merge pull request #12 from defunkt/claude/auto-start-app-on-push-zklQA
...
Add app startup handling in activate endpoint
2026-02-12 08:46:10 -08:00
Chris Wanstrath
bbdcefd1f7
Merge pull request #10 from defunkt/claude/rename-stats-add-filesize-4nMTq
...
Rename stats to metrics and add disk usage tracking
2026-02-12 08:43:20 -08:00
Claude
a7d4e210c2
Auto-start stopped/errored apps on push activate
...
Previously, pushing a new version would only restart apps that were
already running. Apps in stopped or invalid state (e.g. due to a
previous startup error) were left unchanged, requiring a manual start.
Now the activate endpoint calls startApp() for stopped/invalid apps,
so pushing a code fix automatically attempts to start the app.
https://claude.ai/code/session_014UvBEvHbnhaoMLebdRFzm6
2026-02-12 16:17:45 +00:00
Claude
2f4d609290
Fix app rename failing with "port is taken" error
...
renameApp() killed the old process with .kill() but didn't wait for it
to actually exit before restarting on the same port. The OS still had
the port bound, causing the new process to fail with "port is taken".
Additionally, the old process's exit handler would fire after the rename
and corrupt the app's state—releasing the new process's port, setting
state to 'invalid', and nullifying the proc reference.
Fix by:
- Making renameApp async and awaiting proc.exited before proceeding
- Guarding the exit handler to bail out when a newer process has taken over
https://claude.ai/code/session_01W9GF8Cy7T6V2rnVcoNd1Nc
2026-02-12 16:13:59 +00:00
a96aa1d2dc
ruby on rails
2026-02-12 08:07:23 -08:00
14281a1bf5
don't diff binary files
2026-02-12 07:51:51 -08:00
Claude
eb8ef0dd4d
Rename stats to metrics and add data size metric
...
Rename the "stats" CLI command, tool app, and all internal references
to "metrics". Add file size tracking from each app's DATA_DIR as a new
metric, shown in both the CLI table and web UI.
https://claude.ai/code/session_013agP8J1cCfrWZkueZ33jQB
2026-02-12 15:28:20 +00:00
0e3699da5a
show version in config
2026-02-11 21:08:38 -08:00
681a3f2f9e
way simpler
2026-02-11 19:51:43 -08:00
b6e9ec73de
.toes
2026-02-11 19:13:34 -08:00
10154dfd4f
respect gitignore in toes status
2026-02-11 18:16:34 -08:00
Chris Wanstrath
c183fe42e9
set TOES_URL
2026-02-11 16:09:14 -08:00
Chris Wanstrath
d94a4421f9
integrated cron logs, cron cli
2026-02-10 11:12:57 -08:00
89ea6f586a
toes diff pager
2026-02-10 08:09:00 -08:00
579b082b48
legacy
2026-02-09 22:35:43 -08:00