About this project
Lemmy UI is the official web application for Lemmy, a link aggregator and forum for the Fediverse. Lemmy is comparable to Reddit, Lobste.rs or Hacker News: users subscribe to forums, post links and discussions, then vote and comment. The difference is architectural — anyone can run a server, and servers federate with each other like email, so a user registered on one instance can subscribe to communities on other instances and discuss with users elsewhere. It is positioned as an easily self-hostable, decentralized alternative outside corporate control, with each server setting its own moderation policy and appointing site-wide admins and community moderators.
This repository contains the frontend only; the backend lives in the separate LemmyNet/lemmy repository. The UI is an isomorphic Node server rendered with Inferno, based on MrFoxPro's inferno-isomorphic-template, and uses icons from Feather Icons.
Development requires pnpm. The typical flow is to clone the repository recursively, install dependencies, and run the dev server with LEMMY_UI_BACKEND pointing at a Lemmy instance (the public test instance voyager.lemmy.ml is suggested), then open localhost:1234. Documentation covers developing against a locally compiled backend.
Configuration is handled through environment variables, including LEMMY_UI_HOST for the bind address and port, LEMMY_UI_FRONTEND for the browser-reachable base URL, LEMMY_UI_BACKEND and LEMMY_UI_BACKEND_INTERNAL for the backend URLs used by the browser and by the server respectively, LEMMY_UI_HTTPS for default protocol selection, LEMMY_UI_EXTRA_THEMES_FOLDER for additional CSS themes, LEMMY_UI_DISABLE_CSP to disable CSP security headers, and LEMMY_UI_CUSTOM_HTML_HEADER to inject a custom script into the document head. Debugging variables include LEMMY_UI_ERUDA for the mobile browser console, LEMMY_UI_SOURCE_MAPS for accurate stack traces, LEMMY_UI_SERVE_CSS_MAPS for serving CSS map files, and LEMMY_UI_COMPRESSION for response body compression.
The project links to join-lemmy.org for joining and documentation, a Matrix chat for community support, GitHub issues for bug reports and feature requests, release notes, and a code of conduct. Translation is coordinated through Weblate, and container images are published on Docker Hub.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.