aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/administration/CLI_tasks/frontend.md47
-rw-r--r--docs/configuration/cheatsheet.md26
2 files changed, 65 insertions, 8 deletions
diff --git a/docs/administration/CLI_tasks/frontend.md b/docs/administration/CLI_tasks/frontend.md
new file mode 100644
index 000000000..b1e0892bf
--- /dev/null
+++ b/docs/administration/CLI_tasks/frontend.md
@@ -0,0 +1,47 @@
+# Managing frontends
+
+`mix pleroma.frontend install <frontend> [--path <path>] [--develop] [--ref <ref>]`
+
+Frontend can be installed either from local path with compiled sources, or from web.
+
+If installing from web, make sure you have [yarn](https://yarnpkg.com/getting-started/install)
+since it's needed to build frontend locally. When no `--develop` or `--ref <ref>`
+options passed, latest stable frontend will be installed.
+
+If installing from local path, building of sources is up to you.
+
+Currently supported `<frontend>` values:
+- [admin](https://git.pleroma.social/pleroma/admin-fe)
+- [kenoma](http://git.pleroma.social/lambadalambda/kenoma)
+- [mastodon](http://git.pleroma.social/pleroma/mastofe)
+- [pleroma](http://git.pleroma.social/pleroma/pleroma-fe)
+
+## Example installation from local path
+The complete process of installing frontend from local path would be following:
+- download a frontend:
+
+```bash
+git clone https://git.pleroma.social/pleroma/pleroma-fe.git
+```
+- build the frontend
+```bash
+cd pleroma-fe && yarn && yarn build
+```
+- run the following command inside your Pleroma instance root directory:
+```bash
+mix pleroma.frontend install pleroma --path /path/to/pleroma-fe
+```
+
+## Example installation from web
+The complete process of installing frontend from web would be following:
+- make sure you've got `yarn` installed:
+
+```bash
+yarn -v
+```
+
+- run the following command inside your Pleroma instance root directory to
+install latest develop frontend:
+```bash
+mix pleroma.frontend install pleroma --develop
+``` \ No newline at end of file
diff --git a/docs/configuration/cheatsheet.md b/docs/configuration/cheatsheet.md
index 042ad30c9..9ac07f674 100644
--- a/docs/configuration/cheatsheet.md
+++ b/docs/configuration/cheatsheet.md
@@ -204,14 +204,6 @@ config :pleroma, :frontend_configurations,
These settings **need to be complete**, they will override the defaults.
-### :static_fe
-
-Render profiles and posts using server-generated HTML that is viewable without using JavaScript.
-
-Available options:
-
-* `enabled` - Enables the rendering of static HTML. Defaults to `false`.
-
### :assets
This section configures assets to be used with various frontends. Currently the only option
@@ -1018,3 +1010,21 @@ Note: setting `restrict_unauthenticated/timelines/local` to `true` has no practi
Control favicons for instances.
* `enabled`: Allow/disallow displaying and getting instances favicons
+
+## Frontend management
+
+Frontends in Pleroma are swappable - you can [install different versions of different frontends](../administration/CLI_tasks/frontend.md) and specify which one to use here.
+There are 4 types of frontends: `primary`, `mastodon`, `admin` and `static`. While `static` is a special unswappable case which can only be enabled or disabled, the rest of the frontends are represented in a form of `name` and `ref`.
+
+### :frontends
+
+* `primary`: Primary frontend, the one that is served for all pages by default
+ * `name`: name of the installed primary frontend, `none` for headless
+ * `ref`: reference commit of the installed primary frontend
+* `mastodon`: Mastodon frontend that users can switch to from Primary
+ * `name`: Name of the installed Mastodon frontend (currently supported: \"mastodon\" or \"none\")
+ * `ref`: reference commit of the installed Mastodon frontend to be used
+* `admin`: Admin frontend
+ * `name`: Name of the installed Admin frontend (currently supported: \"admin\" or \"none\")
+ * `ref`: reference commit of the installed Admin frontend to be used
+* `static`: if set to `true`, this will render profiles and posts using server-generated HTML that is viewable without using JavaScript. Defaults to `false`.