- TypeScript 80.2%
- JavaScript 11.7%
- SCSS 7%
- HTML 0.7%
- CSS 0.4%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
|
||
| .forgejo/workflows | ||
| .github | ||
| .husky | ||
| .vscode | ||
| app | ||
| custom | ||
| docs | ||
| installation | ||
| jest | ||
| scripts | ||
| tailwind | ||
| types/redux-immutable | ||
| webpack | ||
| .commitlintrc.json | ||
| .env.example | ||
| .eslintignore | ||
| .eslintrc.js | ||
| .gitignore | ||
| .lintstagedrc.json | ||
| .stylelintrc.json | ||
| .tool-versions | ||
| .yarnrc.yml | ||
| babel.config.js | ||
| CHANGELOG.md | ||
| commitlint.config.js | ||
| CREDITS.md | ||
| dangerfile.ts | ||
| jest.config.js | ||
| jsdoc.conf.js | ||
| LICENSE | ||
| package.json | ||
| postcss.config.js | ||
| README.md | ||
| tailwind.config.js | ||
| tsconfig.json | ||
| webpack.config.js | ||
| yarn.lock | ||
Mangane Lomia
Mangane Lomia is a community-maintained web frontend for Akkoma, Pleroma, and Mastodon-compatible servers. It is derived from Mangane and Soapbox, with a compact Misskey-inspired interface, light and dark themes, MFM rendering, and multi-account support.
Highlights
- Light and dark themes with instance branding support
- MFM rendering, including animated functions
- Compact emoji picker and compose formatting controls
- Multi-account switching
- Akkoma, Pleroma, and Mastodon API compatibility
- Responsive desktop and mobile layouts
Development
Node.js 18 and Yarn 4 are used by CI.
corepack enable
corepack prepare yarn@4.0.2 --activate
yarn install --immutable
yarn dev
The development server listens on http://localhost:3036. It proxies API
requests to the instance configured in BACKEND_URL (see
docs/development/running-locally.md).
Useful commands:
yarn build # production files in ./static
yarn lint # JavaScript/TypeScript and Sass checks
yarn test # Jest tests
Releases
Every push to main builds a fresh static.zip and replaces the rolling
latest release.
The archive contains a dist directory suitable for Akkoma/Pleroma's frontend
installer.
For an OTP installation:
/opt/akkoma/bin/pleroma_ctl frontend install mangane-lomia \
--ref dist \
--build-url https://craft.lomia.uk/CarbonC/mangane-lomia/releases/download/latest/static.zip
For a source/Mix installation, use the equivalent command:
mix pleroma.frontend install mangane-lomia \
--ref dist \
--build-url https://craft.lomia.uk/CarbonC/mangane-lomia/releases/download/latest/static.zip
Then select it as the primary frontend:
config :pleroma, :frontends,
primary: %{"name" => "mangane-lomia", "ref" => "dist"}
Restart Akkoma/Pleroma after installing or switching the frontend.
Service workers must be revalidated on every request. Serve /sw.js with
Cache-Control: no-cache, and bypass CDN caching for /sw.js and HTML/SPA
routes. Hashed files under /packs may be cached for a long time. If a
deployment still looks old, compare the filenames in the served index.html
with dist/packs, then unregister the site's service worker and clear its site
data before treating the problem as a build failure.
Documentation
Some documents originate from upstream and may still use the historical Mangane or Soapbox names.
License and attribution
Mangane Lomia is licensed under the AGPL-3.0-or-later. See
LICENSE and CREDITS.md for licensing and
upstream attribution.

