Lighthouse
Lighthouse is a Webmention, Microsub, and WebSub server built by Jacky Alciné to provide a means of handling engagement with other websites.
The source code for the project is available at git.jacky.wtf. It's written in Rust and meant to be distributed as a single binary with everything bundled within to make the act of deployment simple.
You may also be looking for:
Planned Features
- Account management facilitated with IndieAuth, supporting TicketAuth
- Automated checking of endpoint presence on canary pages (a page that's expected to always have an endpoint visible on it)
- Multi-tenant (many people can sign in and use)
- Extending Webmention, WebSub and Microsub to support Tor (tracked at git.jacky.wtf)
- Mimic compaint and feedback logic used in SMTP (tracked at git.jacky.wtf)
Reader
- Customizable by users
- User-defined views via Web Components
- to power rendering of a feed
- or that of an item in a feed
- or a hovercard (or sub-components within)
- Applicable user-specific stylesheets via CSS variables
- User-defined views via Web Components
- Share UX
- Provides a rendering of the linked content
- webactions
- Uses WebSub and Webmention retrival info to update replies to items as they're broadcasted
Webmentions
- In- and out-bound Webmention management
- Caching of parsed microformats and JF2 of inbound Webmentions at the ID level (with post-type hints)
- Atom and h-feed URLs for Webmentions per in-bound endpoint (filterable by URL and last-modified-at )
- Separate endpoints for sending and receiving Webmentions
- Automatic TOFU-esuqe Vouch URL usage (tracked at https://git.jacky.wtf/indieweb/lighthouse/issues/10)
- Allow for adjusting what URLs can recieve Webmentions sent to (tracked at https://git.jacky.wtf/indieweb/lighthouse/issues/13)
- Private Webmention sending and fetching + providing a token endpoint to use for private Webmention (tracked at https://git.jacky.wtf/indieweb/lighthouse/issues/11)
- Automatic sending of Webmentions when a feed updates (tracked at https://git.jacky.wtf/indieweb/lighthouse/issues/18)
- Web-based backfeed by using
rel=canonical
andu-syndication
(tracked at https://git.jacky.wtf/indieweb/lighthouse/issues/16)
Microsub
WebSub
- Subscription information on a per-URL basis
- Proxying WebSub subscriptions over WebSockets, EventSource and paginated GET (tracking at https://git.jacky.wtf/indieweb/lighthouse/issues/22)
- Federation support (tracked at https://git.jacky.wtf/indieweb/lighthouse/issues/22)
Federation
Lighthouse should take in a concept of “external hubs” and allow for users to have Lighthouse act as a meta-subscriber for the external hubs. By listening for the same URLs it sends requests for on external hubs, Lighthouse can pull in those updates and treat them as local ones. The hub that it was fetched from should be kept for reference.
Web Components
Argand is a collection of Web Components that can use the URL of a Webmention endpoint capable of fetching for a target to render into a social feed. That can allow for custom rendering on the site (facepile for likes and RSVP counters).