Fork of pleroma-fe for akkoma; changes a whole bunch and we probably need a proper new name for it
Go to file
Oneric beee99e733
ci/woodpecker/pr/woodpecker Pipeline was successful Details
Stop notifications boxes from change size over time
Notifications about favourites and follows use .notification-right,
notifications about replies instead use .heading-right.

Previously only the former set a min-width, however the
chosen value of 3em was too small to fit the worst case.
As a consequence, when the timestamp text changes over time,
its element width changes, which may result in neighbouring text
(no longer) needing to wrap to a new line in turn changing the size
of the whole notification box pushing older notification boxes down/up.

These constant movements at the side of the screen can be quite
annoying and confusing when the cause cannot be immediately discerned.

Avoid this, by reserving enough space for any timestamp.

For English, the worst case is the five-character 'XXmin', since the
short identifier for minutes is the longest with three letters.
With two exceptions, all other current localisation also do not exceed
three letters in any short unit identifier up to days.
However, some localisations (e.g. Polish) additionally insert a space
between numerical value and unit. This matches SI recommendations
pushing the worst case to 6 characters.

6 characters will be sufficient for timestamps up to 3 weeks in all
languages (minus prev exceptions), which seems reasonable enough
as beyond this timestamps rarely change anyway.

The aforementioned exceptions being Vietnamese and Occitan,
but in the current localisation all or the relevant short unit
identifiers are identical to the long forms indicating this is
just due to incomplete translation.
Indeed, Vietnamese Wikipedia (read through machine translation) suggests
“ph” is commonly used as unit identifiers for minutes, but the current
localisation fully spells it out as “phút”.
2023-10-25 00:37:09 +02:00
.gitea/issue_template Add YAML bug and feat templates 2022-12-08 20:24:21 +02:00
build Fix build 2022-11-20 22:26:16 +00:00
config Add logo files 2022-12-02 11:27:24 +00:00
docs update more images 2023-05-26 23:02:38 -04:00
src Stop notifications boxes from change size over time 2023-10-25 00:37:09 +02:00
static paper theme: more contrast and fix setting tab hover 2023-05-18 23:05:19 +03:00
test Big 'ol set of patches and dep maintenance (#212) 2022-11-15 15:47:32 +00: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
.editorconfig Basic skeleton 2016-10-26 16:46:32 +02:00
.eslintignore Basic skeleton 2016-10-26 16:46:32 +02:00
.eslintrc.js Big 'ol set of patches and dep maintenance (#212) 2022-11-15 15:47:32 +00:00
.gitignore mobile-newline (#226) 2022-11-21 16:49:18 +00:00
.mailmap Add myself to .mailmap 2021-02-15 13:17:52 +03:00
.node-version Add .node-version 2017-02-16 12:51:08 +01:00
.stylelintrc.json Only reload user if it _is_ a user (#232) 2022-11-22 14:40:25 +00:00
.woodpecker.yml don't die on my arm box please 2023-08-05 14:17:42 +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
LICENSE Add license 2016-11-22 12:15:05 -05:00
README.md force CI build 2022-12-29 15:25:03 +00:00
index.html Remove unused bits and bobs 2023-03-15 23:00:31 +00:00
package.json version 2023-08-05 13:29:44 +01: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 add language input 2023-01-15 17:59:32 +00:00

README.md

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
npm install -g yarn
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.