{"id":31916857,"url":"https://github.com/mastertyko/slaynode","last_synced_at":"2026-06-14T03:00:52.443Z","repository":{"id":318724321,"uuid":"1074193539","full_name":"mastertyko/slaynode","owner":"mastertyko","description":"A sleek macOS menu bar application for Node.js process management. Monitor and stop development servers with one click. Real-time detection of npm, yarn, pnpm, and npx processes with beautiful UI.","archived":false,"fork":false,"pushed_at":"2026-06-07T08:19:52.000Z","size":12550,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-07T09:23:15.323Z","etag":null,"topics":["development-tools","macos","menubar","nodejs","process-manager","swift","swiftui"],"latest_commit_sha":null,"homepage":"https://github.com/mastertyko/slaynode","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mastertyko.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":"docs/SUPPORTED_EXAMPLES.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-11T10:17:18.000Z","updated_at":"2026-06-07T08:13:37.000Z","dependencies_parsed_at":null,"dependency_job_id":"6c977cee-7a2a-4be4-8ee9-ab16909464cb","html_url":"https://github.com/mastertyko/slaynode","commit_stats":null,"previous_names":["mastertyko/slaynode"],"tags_count":31,"template":false,"template_full_name":null,"purl":"pkg:github/mastertyko/slaynode","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mastertyko%2Fslaynode","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mastertyko%2Fslaynode/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mastertyko%2Fslaynode/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mastertyko%2Fslaynode/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mastertyko","download_url":"https://codeload.github.com/mastertyko/slaynode/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mastertyko%2Fslaynode/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34307685,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-14T02:00:07.365Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["development-tools","macos","menubar","nodejs","process-manager","swift","swiftui"],"created_at":"2025-10-13T20:14:45.781Z","updated_at":"2026-06-14T03:00:52.438Z","avatar_url":"https://github.com/mastertyko.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SlayNode\n\n\u003cdiv align=\"center\"\u003e\n\n\u003cimg src=\"icon-iOS-Default-1024x1024@1x.png\" alt=\"SlayNode icon\" width=\"160\"\u003e\n\n**A Tahoe-native macOS control room for local services**\n\n[![SwiftPM](https://img.shields.io/badge/SwiftPM-6.2+-FA7343?style=for-the-badge\u0026logo=swift)](https://swift.org)\n[![macOS](https://img.shields.io/badge/macOS-26%2B-000000?style=for-the-badge\u0026logo=apple)](https://apple.com/macos)\n[![License](https://img.shields.io/badge/License-MIT-green?style=for-the-badge)](LICENSE)\n[![CI](https://img.shields.io/github/actions/workflow/status/mastertyko/slaynode/ci.yml?style=for-the-badge\u0026label=CI)](https://github.com/mastertyko/slaynode/actions)\n\n\u003c/div\u003e\n\nSlayNode gives you one place to discover, inspect, and control local services on modern macOS. It unifies live development runtimes, Docker containers, and Homebrew Services into one native dashboard with a fast menu bar entry point, workspace-aware search, and deliberate control actions.\n\n## What You Can Do\n\n- Discover local processes, Docker containers, and Homebrew Services automatically\n- Inspect ports, runtime/source, workspace ownership, command context, and health\n- Use `Stop`, `Force Stop`, `Restart`, `Open Logs`, and `Open Workspace` when supported\n- Search across services, ports, runtimes, and workspaces from the native toolbar\n- Restore recent workspaces and window context through local on-device persistence\n- Keep everything local on your Mac without sending service metadata anywhere\n\n## Install\n\n1. Download the latest release from [GitHub Releases](https://github.com/mastertyko/slaynode/releases).\n2. Drag `SlayNode.app` into `/Applications`.\n3. Launch it:\n\n   ```bash\n   open /Applications/SlayNode.app\n   ```\n\nGitHub release assets are ad-hoc signed and not notarized. macOS may show a\nfirst-launch warning because public releases do not use an Apple Developer ID.\n\n## Build From Source\n\n**Requirements**\n- macOS 26.0 or later\n- Xcode 26 or current Command Line Tools with Swift 6.2 support\n\n```bash\ngit clone https://github.com/mastertyko/slaynode.git\ncd slaynode\n./script/build_and_run.sh\n```\n\nRun the test suite with:\n\n```bash\nswift test --disable-sandbox\n```\n\nRun the same full verification gate that CI and release automation use with:\n\n```bash\n./script/full_verification.sh\n```\n\nGitHub releases also publish a sibling `release-metadata.json` asset beside the DMG and ZIP so you can verify the exact build number, macOS floor, release-note source, and commit provenance without unpacking the bundle.\n\n## Using SlayNode\n\n1. Launch the app and let the dashboard refresh.\n2. Choose `All Services` or focus a workspace from the sidebar.\n3. Select a service from the center column to inspect it in the detail view and inspector.\n4. Use `Stop`, `Force Stop`, `Restart`, `Logs`, or `Open Workspace` depending on what the source supports.\n5. Use `Cmd+,` for Settings, the toolbar search field to narrow the list, and the app menu for About.\n\n## Recognition Model\n\n- Frameworks like Vite, Next.js, Bun, Deno, Python, Ruby, and Go services are normalized into one service model.\n- Docker containers and Homebrew Services are first-class sources with source-specific actions.\n- Working directory, command parsing, ports, health, and dependency heuristics are combined to reduce false positives.\n- Sensitive arguments such as API keys and tokens are redacted before commands are shown in the UI.\n- Destructive actions prefer scoped process previews so you can see when a stop targets a full process tree instead of a single PID.\n\n## Product Shape\n\n- Main window: Tahoe-native `NavigationSplitView` with sidebar, list, detail, and inspector\n- Menu bar: fast triage surface backed by the same service graph as the main app\n- Persistence: recent workspaces, actions, and window state stored locally with SwiftData\n- System integration: App Intents, Spotlight indexing, local notifications, and native window restoration\n\n## Documentation\n\n- [INSTALL.md](INSTALL.md) for installation, source-build, and troubleshooting\n- [docs/DEVELOPMENT.md](docs/DEVELOPMENT.md) for architecture, release automation, and contributor context\n- [docs/ICON_SYSTEM.md](docs/ICON_SYSTEM.md) for the brand asset pipeline\n- [docs/IMPROVEMENT_BACKLOG.md](docs/IMPROVEMENT_BACKLOG.md) for the current maintenance and hardening backlog\n- [docs/SUPPORTED_EXAMPLES.md](docs/SUPPORTED_EXAMPLES.md) for concrete service and runtime scenarios SlayNode recognizes today\n\n## License\n\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmastertyko%2Fslaynode","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmastertyko%2Fslaynode","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmastertyko%2Fslaynode/lists"}