This repository has been archived on 2026-04-03. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Jeffrey Smith 70404ff070 Feat v0.4.1 folders navigation tree (#23)
Add folders as a first-class concept in the Notes surface with full
CRUD, nested tree navigation, and folder-based note filtering.

Backend (script.star):
- Folder CRUD handlers: list, create, update, delete
- Move-note endpoint to reassign folder_id
- Delete cascades: orphan notes to unfiled, reparent child folders
- Stats now include unfiled and folder counts

Frontend (js/main.js):
- FolderTree component with flat-to-tree builder via useMemo
- FolderNode recursive component with expand/collapse, inline rename
- Folder state: activeFolderId, showUnfiled for sidebar filtering
- Editor folder select dropdown for moving notes between folders
- New notes inherit active folder on creation

Schema (manifest.json):
- New ext_notes_folders table (name, parent_id, creator_id, sort_order)
- 5 new API routes: GET/POST /folders, PUT/DELETE /folders/*, POST /notes/move
- Version bumped to 0.2.0

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-29 11:38:54 +00:00
2026-03-28 22:46:40 +00:00
2026-03-28 22:46:40 +00:00
2026-03-28 22:46:40 +00:00
2026-03-28 21:22:39 +00:00
2026-03-17 22:31:34 +00:00
2026-03-29 11:16:38 +00:00
2026-03-28 22:46:40 +00:00
2026-02-03 21:28:18 +00:00
2026-03-28 22:46:40 +00:00
2026-03-29 11:16:38 +00:00
2026-03-26 17:32:32 +00:00
2026-03-29 11:16:38 +00:00

Switchboard Core

A self-hosted extension platform. Identity, teams, permissions, workflows, and a package system. Everything else ships as installable extensions.

What This Is

Switchboard Core is the kernel. It provides the primitives that extensions build on: users, teams, groups, scoped credentials, a Starlark sandbox, workflow orchestration, notifications, and a package installer. It does not include AI chat, providers, personas, or any domain-specific features — those are all extension packages.

Stack

  • Backend: Go / Gin
  • Frontend: Preact + htm (no build step)
  • Database: PostgreSQL (production) + SQLite (dev/test/edge)
  • Sandbox: Starlark with capability-gated modules
  • Deployment: Single Docker image, Kubernetes

Quick Start

# Docker (recommended)
docker compose up --build
# → http://localhost:3000  (admin/admin)

# Or from source
git clone <repo-url> && cd switchboard-core
cp server/.env.example server/.env  # edit DB credentials
cd server && go run .
# → http://localhost:8080

Bundled packages (workflows, surfaces, task manager) are auto-installed on first boot. See Distribution Guide for production deployment and customization.

Kernel Features

  • Auth: Builtin password, mTLS (client cert), OIDC (Keycloak et al.)
  • Teams & Groups: Horizontal isolation + vertical permissions
  • Packages: Unified registry for surfaces, extensions, libraries, workflows
  • Starlark Sandbox: Capability-gated server-side scripting for extensions
  • Workflows: Staged processes with forms, review, and webhooks
  • Connections: Scoped credential storage (global/team/personal), AES-256-GCM encrypted
  • Notifications: In-app with per-type preferences
  • Audit Log: All admin operations logged
  • Object Storage: PVC or S3-compatible
  • Multi-Replica HA: PG-backed WS tickets and rate limit counters

Documentation

Project Status

v0.3.8 — Distribution. Bundled packages auto-install on first boot, builder image for faster custom builds, per-environment package allowlists. See ROADMAP.md for the full journey from v0.1.0 kernel extraction through v0.3.x workflows to the upcoming v0.4.0 Notes surface.

License

Proprietary. All rights reserved.

Description
No description provided
Readme Apache-2.0 23 MiB
v0.9.9 Latest
2026-04-03 20:11:58 +00:00
Languages
Go 52.1%
JavaScript 34.6%
CSS 5.5%
Shell 3.8%
HTML 2%
Other 1.9%