A fork of AkkomaGang/akkoma-fe
Go to file
itepechi 5d22d8da49
Modernise build process
2024-09-06 07:31:42 +09:00
.gitea/issue_template Add YAML bug and feat templates 2022-12-08 20:24:21 +02:00
build remove nonsense dep 2024-06-23 03:02:45 +01:00
config ANNOYING dependency update 2024-05-28 04:02:17 +01:00
docs update more images 2023-05-26 23:02:38 -04:00
src Merge remote-tracking branch 'upstream/develop' into bnakkoma 2024-09-05 15:01:33 +09:00
static Merge remote-tracking branch 'upstream/develop' into bnakkoma 2024-06-14 13:44:36 +09:00
test correct package.json lint task 2024-05-29 04:01:29 +01:00
tools update emoji.json, add script that merges new emoji from another source 2020-11-30 14:43:39 +02:00
.babelrc cleanup 2022-03-23 15:44:37 +02:00
.dockerignore Add a Makefile for easy building 2023-08-01 23:41:41 +09:00
.editorconfig Basic skeleton 2016-10-26 16:46:32 +02:00
.gitignore Add a Makefile for easy building 2023-08-01 23:41:41 +09:00
.mailmap Add myself to .mailmap 2021-02-15 13:17:52 +03:00
.stylelintrc.json Only reload user if it _is_ a user (#232) 2022-11-22 14:40:25 +00:00
.tool-versions add asdf tool file 2024-05-28 03:14:50 +01:00
.woodpecker.yml Merge branch 'develop' into dep-update 2024-06-15 13:38:40 +01:00
BREAKING_CHANGES.md fixup! Removed formattingOptionsEnabled in favor of relying on BE-provided list of accepted formatting options 2019-06-16 20:23:07 +03:00
CHANGELOG.md Move remote interaction chnagelog entry to "Unreleased" 2022-09-19 18:39:36 -04:00
CODE_OF_CONDUCT.md Big 'ol set of patches and dep maintenance (#212) 2022-11-15 15:47:32 +00:00
CONTRIBUTORS.md editing (#158) 2022-09-06 19:25:03 +00:00
Dockerfile Modernise build process 2024-09-06 07:31:42 +09:00
LICENSE Add license 2016-11-22 12:15:05 -05:00
Makefile Modernise build process 2024-09-06 07:31:42 +09:00
README.md Add note on readme about upstream version compatibility 2024-09-05 14:55:34 +09:00
eslint.config.js migrate to eslint 9 syntax 2024-05-29 03:59:37 +01:00
index.html Improve support for favicon and PWA icons 2023-09-26 08:56:32 +09:00
package.json Merge remote-tracking branch 'upstream/develop' into bnakkoma 2024-09-05 15:01:33 +09:00
postcss.config.js revives autoprefixer which went AWOL during Webpack v1 -> v4 migration 2019-08-14 01:18:07 +03:00
renovate.json Add renovate.json 2022-03-06 17:50:32 +00:00
yarn.lock Upgrade vue packages 2024-08-17 18:01:59 +02:00

README.md

BNAkkoma: Brand New Akkoma

It's not that new. This is just a cheap pun on the title of a furry anime.

Also keep in mind that B in BNAkkoma stands for 'bleeding-edge', features can be added, changed or removed at any time!

If you are experiencing any strange quirks, make sure both your frontend and backend are up to date.

If your software are up to date but the bug is still there, ping me on the fediverse at '@itepechi@fedi.itepechi.me'.

What is this?

This is a fork of AkkomaGang/akkoma-fe, with a custom theme and Makefile.

The differences from the upstream repository are described below:

  • Added a Makefile where you can build the client inside a Docker container
  • Refactored some components and styles
  • Fixed a lot of broken CSS rules and misaligned elements
  • Added and changed the default theme to a custom one
  • Added support for setting the default post language
  • Stole some commits from the original Pleroma frontend
  • Added OpenSearch protocol support
  • Added the Media tab to the search page (requires appropriate backend)
  • Added 'Limit to Following' filter to the search page (requires appropriate backend)
  • Added 'Limit to Local' filter to the search page (requires appropriate backend)
  • Implemented lazy loading of search results
  • More than 200 (!) Japanese translations have been fixed
  • Removed some themes to save network bandwidth
  • Improved PWA support, sort of

Although this frontend application is designed to work with the BNAkkoma backend, it remains compatible with the original version of Akkoma by only enabling additional features when the backend server returns a corresponding flag.

How to build

Requires 2GB+ memory.

# Docker
make

# Podman
make RUNTIME=podman

Akkoma-FE

English OK 日本語OK

This is a fork of Akkoma-FE from the Pleroma project, with support for new Akkoma features such as:

  • MFM support via marked-mfm
  • Custom emoji reactions

For Translators

The Weblate UI is recommended for adding or modifying translations for Akkoma-FE.

Alternatively, edit/create src/i18n/$LANGUAGE_CODE.json (where $LANGUAGE_CODE is the ISO 639-1 code for your language), then add your language to src/i18n/messages.js if it doesn't already exist there.

Akkoma-FE will set your language by your browser locale, but you can temporarily force it in the code by changing the locale in main.js.

FOR ADMINS

To use Akkoma-FE in Akkoma, use the frontend CLI task to install Akkoma-FE, then modify your configuration as described in the Frontend Management doc.

Build Setup

# install dependencies
corepack enable
yarn

# serve with hot reload at localhost:8080
npm run dev

# build for production with minification
npm run build

# run unit tests
npm run unit

For Contributors:

You can create file /config/local.json (see example) to enable some convenience dev options:

  • target: makes local dev server redirect to some existing instance's BE instead of local BE, useful for testing things in near-production environment and searching for real-life use-cases.
  • staticConfigPreference: makes FE's /static/config.json take preference of BE-served /api/statusnet/config.json. Only works in dev mode.

FE Build process also leaves current commit hash in global variable ___pleromafe_commit_hash so that you can easily see which pleroma-fe commit instance is running, also helps pinpointing which commit was used when FE was bundled into BE.

Configuration

Edit config.json for configuration.

Options

Login methods

loginMethod can be set to either password (the default) or token, which will use the full oauth redirection flow, which is useful for SSO situations.