Releases: rahmanef63/open-silong
Releases · rahmanef63/open-silong
Release list
v1.0.0 — First public release
open-silong v1.0.0 — the first public open-source release.
An open-source, self-hostable collaborative workspace inspired by Notion & Obsidian: a block editor, databases, and an Obsidian-style knowledge graph. Next 16 · React 19 · Convex · Tailwind v4. Production-deployed on Vercel + Convex Cloud; typecheck + 1,110 tests + build green. MIT licensed, no vendor lock-in.
🔗 Live demo: https://silong-os.vercel.app
✨ Added
- Per-page share grants — share a single page with a specific user (by email) as viewer or editor, independent of workspace membership; granted pages surface in the library "Shared" section. Bounded authz so an editor grant reaches page content only — never trash / delete / re-share / grant management.
- Convex handler test suite — a
convex-testharness + 33 in-process handler tests covering pages CRUD + descendant cascade, database rows, the workspace membership gate (owner / non-member / viewer / unauth), public share slugs, and per-page grant authz. - Knowledge graph, Obsidian-style (
/dashboard/graph) — interactive cloud of pages,[[wikilinks]],@mentions,#tags, and database rows, with backlinks and unresolved "ghost" nodes. - Architecture diagrams (
docs/architecture/diagrams.md) +TRADEMARKS.md.
🔧 Changed
- Partial Prerendering (Next Cache Components) — the auth + realtime stack is scoped to an
(app)route group andcacheComponentsis enabled, so every route builds as a static shell + server-streamed data; public/share·/site·/formsno longer boot the Convex client. - Performance pass — −~400 KB dashboard first-load (barrel→leaf split), dropped the always-mounted global snapshot subscription, content-keyed structural sharing so one edit re-renders one row,
getByIdDTO, non-reactive admin analytics, and ~2.6 k lines of dead code + the orphaned slice-portability apparatus removed. - Mobile UX — the AI console and page action menu are now vaul bottom-sheet drawers (drag the handle to close); nested submenus portal into the drawer; the topbar was decluttered (theme relocated into the page menu, redundant search hidden); submenus open centered.
- Graph Forces + Animate rebuilt on the d3-force model (inverse-square repulsion, degree-normalised springs, reheat/breathing, focus dimming, cluster tinting).
🐛 Fixed
@-mention rendered an extra line — Tailwind Preflight forcessvg{display:block}, pushing the inline mention icon onto its own line; icon is nowdisplay:inline-block.- Nested trash / restore / permanently-delete threw in production — the descendant BFS paginated per level, but Convex allows one paginated query per function execution; each level now reads with an indexed
.take.
📄 Full changelog: CHANGELOG.md · 🚀 Deploy your own: DEPLOY.md · 🤝 Contribute: CONTRIBUTING.md