Skip to content

Roadmap: state of the repo, and where it's going #11

Description

@melvincarvalho

An entry point for anyone browsing. This repo is an experiment: build out-of-tree plugins for JavaScript Solid Server on the #206 loader, and treat every wall as a finding about what the plugin api is missing.

Where it stands

  • 33 plugins, 386 tests, all green (npm test); compose.test.js boots all 33 on one server, serve.js is the runnable demo (front door: /admin/).
  • Capability classes: realtime, DAV family, fediverse/social/chat (5 shims), IndieWeb publishing, identity, query/search, object storage, proxy, dev tooling, pay, data portability, ops/observability, mail (JMAP), link-embeds (oEmbed), remoteStorage, operator admin.

The docs (read in this order)

  • AGENT.md — how to build a plugin (the contract, the five patterns, the copy-map, the footguns).
  • NOTES.md — the findings log: every wall, ranked by how many plugins independently demanded the seam.
  • REPORT.md — the maintainer-facing summary: the four api seams to add next (authorize, events, reservePath, serverInfo) + api.plugins, each fileable, with consumers/sketch/cost.
  • STRATEGY.md — where this sits vs WordPress/Nextcloud/ATProto PDS, and the realistic play.
  • SECURITY.md — the four-axis audit: what was found, fixed, and accepted-as-risk.

Filed upstream (core)

Five loader/core bugs found during this work: JavaScriptSolidServer#596–#600 (id derivation, dotted-prefix WS, logger:false vs onResponse hooks, error-wrap drops err.code, and the non-atomic conditional write — the one with data-loss consequences).

Open here

The api seams (not filed upstream yet)

The four seams in REPORT.md are the highest-value core additions. They are not filed on the core repo yet — that's a maintainer decision. REPORT.md is the draft.

Where it's going

Distribution is the gap (STRATEGY.md): a Dockerfile + Umbrel/CasaOS manifest, a public demo instance, and leading with the "one pod, every protocol" demo rather than the spec. Contributions welcome — see the plugin-idea issues and AGENT.md.

Metadata

Metadata

Assignees

No one assigned

    Labels

    trackingRoadmap / umbrella tracking issue

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions