From 50e7275c3bc013a5534129cfd97b81f643a7fe51 Mon Sep 17 00:00:00 2001 From: Nutomic <me@nutomic.com> Date: Wed, 6 Jan 2021 05:27:58 +0000 Subject: [PATCH] Move docs into submodule (fixes #1342) (#1343) --- .gitmodules | 3 + docker/dev/Dockerfile | 2 + docker/dev/volume_mount.dockerfile | 4 +- docker/prod/Dockerfile | 2 + docs | 1 + docs/.gitignore | 1 - docs/book.toml | 6 - docs/img/chat_screen.png | Bin 79469 -> 0 bytes docs/img/main_screen.png | Bin 94316 -> 0 bytes docs/img/rank_algorithm.png | Bin 55191 -> 0 bytes docs/src/SUMMARY.md | 26 - docs/src/about/about.md | 30 - docs/src/about/features.md | 35 - docs/src/about/goals.md | 38 - docs/src/about/guide.md | 43 - docs/src/about/ranking.md | 37 - docs/src/administration/administration.md | 11 - docs/src/administration/backup_and_restore.md | 83 - docs/src/administration/configuration.md | 19 - docs/src/administration/install_ansible.md | 25 - docs/src/administration/install_docker.md | 55 - docs/src/contributing/contributing.md | 40 - docs/src/contributing/custom_frontend.md | 66 - docs/src/contributing/docker_development.md | 32 - .../contributing/federation_development.md | 69 - docs/src/contributing/local_development.md | 88 - docs/src/contributing/tests.md | 20 - docs/src/contributing/theming.md | 19 - docs/src/contributing/websocket_http_api.md | 2297 ----------------- docs/src/federation/administration.md | 28 - docs/src/federation/federation.md | 16 - docs/src/federation/lemmy_protocol.md | 694 ----- docs/src/federation/overview.md | 127 - docs/src/federation/resources.md | 22 - docs/src/lemmy_council.md | 80 - 35 files changed, 11 insertions(+), 4008 deletions(-) create mode 100644 .gitmodules create mode 160000 docs delete mode 100644 docs/.gitignore delete mode 100644 docs/book.toml delete mode 100644 docs/img/chat_screen.png delete mode 100644 docs/img/main_screen.png delete mode 100644 docs/img/rank_algorithm.png delete mode 100644 docs/src/SUMMARY.md delete mode 100644 docs/src/about/about.md delete mode 100644 docs/src/about/features.md delete mode 100644 docs/src/about/goals.md delete mode 100644 docs/src/about/guide.md delete mode 100644 docs/src/about/ranking.md delete mode 100644 docs/src/administration/administration.md delete mode 100644 docs/src/administration/backup_and_restore.md delete mode 100644 docs/src/administration/configuration.md delete mode 100644 docs/src/administration/install_ansible.md delete mode 100644 docs/src/administration/install_docker.md delete mode 100644 docs/src/contributing/contributing.md delete mode 100644 docs/src/contributing/custom_frontend.md delete mode 100644 docs/src/contributing/docker_development.md delete mode 100644 docs/src/contributing/federation_development.md delete mode 100644 docs/src/contributing/local_development.md delete mode 100644 docs/src/contributing/tests.md delete mode 100644 docs/src/contributing/theming.md delete mode 100644 docs/src/contributing/websocket_http_api.md delete mode 100644 docs/src/federation/administration.md delete mode 100644 docs/src/federation/federation.md delete mode 100644 docs/src/federation/lemmy_protocol.md delete mode 100644 docs/src/federation/overview.md delete mode 100644 docs/src/federation/resources.md delete mode 100644 docs/src/lemmy_council.md diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 00000000..4b44a484 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "docs"] + path = docs + url = https://github.com/LemmyNet/lemmy-docs.git diff --git a/docker/dev/Dockerfile b/docker/dev/Dockerfile index eba8e1ea..01c3c75b 100644 --- a/docker/dev/Dockerfile +++ b/docker/dev/Dockerfile @@ -46,6 +46,8 @@ RUN cp ./target/$CARGO_BUILD_TARGET/$RUSTRELEASEDIR/lemmy_server /app/lemmy_serv # Build the docs FROM $RUST_BUILDER_IMAGE as docs WORKDIR /app +RUN cargo install mdbook --git https://github.com/Ruin0x11/mdBook.git \ + --branch localization --rev d06249b --force COPY --chown=rust:rust docs ./docs RUN mdbook build docs/ diff --git a/docker/dev/volume_mount.dockerfile b/docker/dev/volume_mount.dockerfile index d10e7263..6e25dd7e 100644 --- a/docker/dev/volume_mount.dockerfile +++ b/docker/dev/volume_mount.dockerfile @@ -15,8 +15,10 @@ RUN --mount=type=cache,target=/usr/local/cargo/registry \ RUN --mount=type=cache,target=/app/target \ cp target/debug/lemmy_server lemmy_server -FROM peaceiris/mdbook:v0.3.7 as docs +FROM rust:1.47-buster as docs WORKDIR /app +RUN cargo install mdbook --git https://github.com/Ruin0x11/mdBook.git \ + --branch localization --rev d06249b --force COPY docs ./docs RUN mdbook build docs/ diff --git a/docker/prod/Dockerfile b/docker/prod/Dockerfile index 3a17eefc..9a120683 100644 --- a/docker/prod/Dockerfile +++ b/docker/prod/Dockerfile @@ -46,6 +46,8 @@ RUN cp ./target/$CARGO_BUILD_TARGET/$RUSTRELEASEDIR/lemmy_server /app/lemmy_serv # Build the docs FROM $RUST_BUILDER_IMAGE as docs WORKDIR /app +RUN cargo install mdbook --git https://github.com/Ruin0x11/mdBook.git \ + --branch localization --rev d06249b --force COPY --chown=rust:rust docs ./docs RUN mdbook build docs/ diff --git a/docs b/docs new file mode 160000 index 00000000..93ede3dd --- /dev/null +++ b/docs @@ -0,0 +1 @@ +Subproject commit 93ede3dd623a40f408baf70d68dd868ea5163c53 diff --git a/docs/.gitignore b/docs/.gitignore deleted file mode 100644 index 7585238e..00000000 --- a/docs/.gitignore +++ /dev/null @@ -1 +0,0 @@ -book diff --git a/docs/book.toml b/docs/book.toml deleted file mode 100644 index 55cce8c0..00000000 --- a/docs/book.toml +++ /dev/null @@ -1,6 +0,0 @@ -[book] -authors = ["Felix Ableitner"] -language = "en" -multilingual = false -src = "src" -title = "Lemmy Documentation" diff --git a/docs/img/chat_screen.png b/docs/img/chat_screen.png deleted file mode 100644 index 21a452dcfc360eb5c2784365b5ddddb88fff1f05..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 79469 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 diff --git a/docs/img/main_screen.png b/docs/img/main_screen.png deleted file mode 100644 index 5d1f0c32a6de8bb64da24a8066f969029993ac58..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 94316 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 Q8R}D2)KvH`XZ7X(0P9;VGynhq diff --git a/docs/img/rank_algorithm.png b/docs/img/rank_algorithm.png deleted file mode 100644 index c8200f91b10c53f71bd3062102cdba24329cc269..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 55191 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 diff --git a/docs/src/SUMMARY.md b/docs/src/SUMMARY.md deleted file mode 100644 index c8b76f7c..00000000 --- a/docs/src/SUMMARY.md +++ /dev/null @@ -1,26 +0,0 @@ -# Summary - -- [About](about/about.md) - - [Features](about/features.md) - - [Goals](about/goals.md) - - [Post and Comment Ranking](about/ranking.md) - - [Guide](about/guide.md) -- [Administration](administration/administration.md) - - [Install with Docker](administration/install_docker.md) - - [Install with Ansible](administration/install_ansible.md) - - [Configuration](administration/configuration.md) - - [Backup and Restore](administration/backup_and_restore.md) -- [Federation](federation/federation.md) - - [Federation Overview](federation/overview.md) - - [Administration](federation/administration.md) - - [Resources](federation/resources.md) - - [Lemmy Protocol](federation/lemmy_protocol.md) -- [Contributing](contributing/contributing.md) - - [Docker Development](contributing/docker_development.md) - - [Local Development](contributing/local_development.md) - - [Theming Guide](contributing/theming.md) - - [Websocket/HTTP API](contributing/websocket_http_api.md) - - [Creating a Custom Frontend](contributing/custom_frontend.md) - - [Tests](contributing/tests.md) - - [Federation Development](contributing/federation_development.md) -- [Lemmy Council](lemmy_council.md) diff --git a/docs/src/about/about.md b/docs/src/about/about.md deleted file mode 100644 index 8db35b4f..00000000 --- a/docs/src/about/about.md +++ /dev/null @@ -1,30 +0,0 @@ -## About The Project - -Front Page|Post ----|--- -![main screen](https://raw.githubusercontent.com/LemmyNet/lemmy/main/docs/img/main_screen.png)|![chat screen](https://raw.githubusercontent.com/LemmyNet/lemmy/main/docs/img/chat_screen.png) - -[Lemmy](https://github.com/LemmyNet/lemmy) is similar to sites like [Reddit](https://reddit.com), [Lobste.rs](https://lobste.rs), [Raddle](https://raddle.me), or [Hacker News](https://news.ycombinator.com/): you subscribe to forums you're interested in, post links and discussions, then vote, and comment on them. Behind the scenes, it is very different; anyone can easily run a server, and all these servers are federated (think email), and connected to the same universe, called the [Fediverse](https://en.wikipedia.org/wiki/Fediverse). - -For a link aggregator, this means a user registered on one server can subscribe to forums on any other server, and can have discussions with users registered elsewhere. - -The overall goal is to create an easily self-hostable, decentralized alternative to reddit and other link aggregators, outside of their corporate control and meddling. - -Each lemmy server can set its own moderation policy; appointing site-wide admins, and community moderators to keep out the trolls, and foster a healthy, non-toxic environment where all can feel comfortable contributing. - -*Note: Federation is still in active development* - -### Why's it called Lemmy? - -- Lead singer from [Motörhead](https://invidio.us/watch?v=pWB5JZRGl0U). -- The old school [video game](<https://en.wikipedia.org/wiki/Lemmings_(video_game)>). -- The [Koopa from Super Mario](https://www.mariowiki.com/Lemmy_Koopa). -- The [furry rodents](http://sunchild.fpwc.org/lemming-the-little-giant-of-the-north/). - -### Built With - -- [Rust](https://www.rust-lang.org) -- [Actix](https://actix.rs/) -- [Diesel](http://diesel.rs/) -- [Inferno](https://infernojs.org) -- [Typescript](https://www.typescriptlang.org/) diff --git a/docs/src/about/features.md b/docs/src/about/features.md deleted file mode 100644 index a7530399..00000000 --- a/docs/src/about/features.md +++ /dev/null @@ -1,35 +0,0 @@ -# Features - -- Open source, [AGPL License](/LICENSE). -- Self hostable, easy to deploy. - - Comes with [Docker](#docker) and [Ansible](#ansible). -- Clean, mobile-friendly interface. - - Only a minimum of a username and password is required to sign up! - - User avatar support. - - Live-updating Comment threads. - - Full vote scores `(+/-)` like old reddit. - - Themes, including light, dark, and solarized. - - Emojis with autocomplete support. Start typing `:` - - User tagging using `@`, Community tagging using `!`. - - Integrated image uploading in both posts and comments. - - A post can consist of a title and any combination of self text, a URL, or nothing else. - - Notifications, on comment replies and when you're tagged. - - Notifications can be sent via email. - - i18n / internationalization support. - - RSS / Atom feeds for `All`, `Subscribed`, `Inbox`, `User`, and `Community`. -- Cross-posting support. - - A *similar post search* when creating new posts. Great for question / answer communities. -- Moderation abilities. - - Public Moderation Logs. - - Can sticky posts to the top of communities. - - Both site admins, and community moderators, who can appoint other moderators. - - Can lock, remove, and restore posts and comments. - - Can ban and unban users from communities and the site. - - Can transfer site and communities to others. -- Can fully erase your data, replacing all posts and comments. -- NSFW post / community support. -- High performance. - - Server is written in rust. - - Front end is `~80kB` gzipped. - - Front end works without javascript (read-only). - - Supports arm64 / Raspberry Pi. diff --git a/docs/src/about/goals.md b/docs/src/about/goals.md deleted file mode 100644 index e7d8e8dc..00000000 --- a/docs/src/about/goals.md +++ /dev/null @@ -1,38 +0,0 @@ -# Goals - -- Come up with a name / codename. -- Must have communities. -- Must have threaded comments. -- Must be federated: liking and following communities across instances. -- Be live-updating: have a right pane for new comments, and a main pain for the full threaded view. - - Use websockets for post / gets to your own instance. - -# Questions - -- How does voting work? Should we go back to the old way of showing up and downvote counts? Or just a score? -- Decide on tech to be used - - Backend: Actix, Diesel. - - Frontend: inferno, typescript and bootstrap for now. -- Should it allow bots? -- Should the comments / votes be static, or feel like a chat, like [flowchat?](https://flow-chat.com). - - Two pane model - Right pane is live comments, left pane is live tree view. - - On mobile, allow you to switch between them. Default? - -# Resources / Potential Libraries - -- [Diesel to Postgres data types](https://kotiri.com/2018/01/31/postgresql-diesel-rust-types.html) -- [helpful diesel examples](http://siciarz.net/24-days-rust-diesel/) -- [Recursive query for adjacency list for nested comments](https://stackoverflow.com/questions/192220/what-is-the-most-efficient-elegant-way-to-parse-a-flat-table-into-a-tree/192462#192462) -- https://github.com/sparksuite/simplemde-markdown-editor -- [Markdown-it](https://github.com/markdown-it/markdown-it) -- [Sticky Sidebar](https://stackoverflow.com/questions/38382043/how-to-use-css-position-sticky-to-keep-a-sidebar-visible-with-bootstrap-4/49111934) -- [RXJS websocket](https://stackoverflow.com/questions/44060315/reconnecting-a-websocket-in-angular-and-rxjs/44067972#44067972) -- [Rust JWT](https://github.com/Keats/jsonwebtoken) -- [Hierarchical tree building javascript](https://stackoverflow.com/a/40732240/1655478) -- [Hot sorting discussion](https://meta.stackexchange.com/questions/11602/what-formula-should-be-used-to-determine-hot-questions) [2](https://medium.com/hacking-and-gonzo/how-reddit-ranking-algorithms-work-ef111e33d0d9) -- [Classification types.](https://www.reddit.com/r/ModeratorDuck/wiki/subreddit_classification) -- [RES expando - Possibly make this into a switching react component.](https://github.com/honestbleeps/Reddit-Enhancement-Suite/tree/d21f55c21e734f47d8ed03fe0ebce5b16653b0bd/lib/modules/hosts) -- [Temp Icon](https://www.flaticon.com/free-icon/mouse_194242) -- [Rust docker build](https://shaneutt.com/blog/rust-fast-small-docker-image-builds/) -- [Zurb mentions](https://github.com/zurb/tribute) -- [TippyJS](https://github.com/atomiks/tippyjs) diff --git a/docs/src/about/guide.md b/docs/src/about/guide.md deleted file mode 100644 index 59244b1e..00000000 --- a/docs/src/about/guide.md +++ /dev/null @@ -1,43 +0,0 @@ -# Lemmy Guide - -Start typing... - -- `@a_user_name` to get a list of usernames. -- `!a_community` to get a list of communities. -- `:emoji` to get a list of emojis. - -## Sorting - -*Applies to both posts and comments* - -Type | Description ---- | --- -Active | Trending sort based on the score, and the most recent comment time. -Hot | Trending sort based on the score, and the post creation time. -New | Newest items. -Top | The highest scoring items in the given time frame. - -For more detail, check the [Post and Comment Ranking details](ranking.md). - -## Markdown Guide - -Type | Or | ⦠to Get ---- | --- | --- -\*Italic\* | \_Italic\_ | _Italic_ -\*\*Bold\*\* | \_\_Bold\_\_ | **Bold** -\# Heading 1 | Heading 1 <br> ========= | <h4>Heading 1</h4> -\## Heading 2 | Heading 2 <br>--------- | <h5>Heading 2</h5> -\[Link\](http://a.com) | \[Link\]\[1\]<br>â® <br>\[1\]: http://b.org | [Link](https://commonmark.org/) -!\[Image\](http://url/a.png) | !\[Image\]\[1\]<br>â® <br>\[1\]: http://url/b.jpg | ![Markdown](https://commonmark.org/help/images/favicon.png) -\> Blockquote | | <blockquote>Blockquote</blockquote> -\* List <br>\* List <br>\* List | \- List <br>\- List <br>\- List <br> | * List <br>* List <br>* List <br> -1\. One <br>2\. Two <br>3\. Three | 1) One<br>2) Two<br>3) Three | 1. One<br>2. Two<br>3. Three -Horizontal Rule <br>\--- | Horizontal Rule<br>\*\*\* | Horizontal Rule <br><hr> -\`Inline code\` with backticks | |`Inline code` with backticks -\`\`\`<br>\# code block <br>print '3 backticks or'<br>print 'indent 4 spaces' <br>\`\`\` | ····\# code block<br>····print '3 backticks or'<br>····print 'indent 4 spaces' | \# code block <br>print '3 backticks or'<br>print 'indent 4 spaces' -::: spoiler hidden or nsfw stuff<br>*a bunch of spoilers here*<br>::: | | <details><summary> hidden or nsfw stuff </summary><p><em>a bunch of spoilers here</em></p></details> -Some ~subscript~ text | | Some <sub>subscript</sub> text -Some ^superscript^ text | | Some <sup>superscript</sup> text - -[CommonMark Tutorial](https://commonmark.org/help/tutorial/) - diff --git a/docs/src/about/ranking.md b/docs/src/about/ranking.md deleted file mode 100644 index 30f76ec1..00000000 --- a/docs/src/about/ranking.md +++ /dev/null @@ -1,37 +0,0 @@ -# Trending / Hot / Best Sorting algorithm -## Goals -- During the day, new posts and comments should be near the top, so they can be voted on. -- After a day or so, the time factor should go away. -- Use a log scale, since votes tend to snowball, and so the first 10 votes are just as important as the next hundred. - -## Implementations - -### Reddit -Does not take the lifetime of the thread into account, [giving early comments an overwhelming advantage over later ones,](https://minimaxir.com/2016/11/first-comment/) with the effect being even worse in small communities. New comments pool at the bottom of the thread, effectively killing off discussion and making each thread a race to comment early. This lowers the quality of conversation and rewards comments that are repetitive and spammy. - -### Hacker News - -While far superior to Reddit's implementation for its decay of scores over time, [Hacker News' ranking algorithm](https://medium.com/hacking-and-gonzo/how-hacker-news-ranking-algorithm-works-1d9b0cf2c08d) does not use a logarithmic scale for scores. - -### Lemmy - -Counterbalances the snowballing effect of votes over time with a logarithmic scale. Negates the inherent advantage of early comments while still ensuring that votes still matter in the long-term, not nuking older popular comments. - -``` -Rank = ScaleFactor * log(Max(1, 3 + Score)) / (Time + 2)^Gravity - -Score = Upvotes - Downvotes -Time = time since submission (in hours) -Gravity = Decay gravity, 1.8 is default -``` -- Lemmy uses the same `Rank` algorithm above, in two sorts: `Active`, and `Hot`. - - `Active` uses the post votes, and latest comment time (limited to two days). - - `Hot` uses the post votes, and the post published time. -- Use Max(1, score) to make sure all comments are affected by time decay. -- Add 3 to the score, so that everything that has less than 3 downvotes will seem new. Otherwise all new comments would stay at zero, near the bottom. -- The sign and abs of the score are necessary for dealing with the log of negative scores. -- A scale factor of 10k gets the rank in integer form. - -A plot of rank over 24 hours, of scores of 1, 5, 10, 100, 1000, with a scale factor of 10k. - -![](https://raw.githubusercontent.com/LemmyNet/lemmy/main/docs/img/rank_algorithm.png) diff --git a/docs/src/administration/administration.md b/docs/src/administration/administration.md deleted file mode 100644 index db4e7db1..00000000 --- a/docs/src/administration/administration.md +++ /dev/null @@ -1,11 +0,0 @@ -# Administration info - -Information for Lemmy instance admins, and those who want to run a server. - -## Install - -Lemmy has two primary installation methods, [manually with Docker](install_docker.md), and [automated with Ansible](install_ansible.md). We recommend using Ansible, because it simplifies the installation and also makes updating easier. - -### Manual install (without Docker) - -Manual installs are *possible*, but not preferred, since Lemmy is dependent on other local services: The [lemmy-ui](https://github.com/LemmyNet/lemmy-ui), [a Postgresql Database](https://www.postgresql.org/), [pict-rs](https://git.asonix.dog/asonix/pict-rs/) for images, and [iframely](https://iframely.com/) for embeds. To see how these are wired together, look at the docker-compose.yml files. Due to the complexity of different systems, we will not support manual installs. diff --git a/docs/src/administration/backup_and_restore.md b/docs/src/administration/backup_and_restore.md deleted file mode 100644 index 633c687f..00000000 --- a/docs/src/administration/backup_and_restore.md +++ /dev/null @@ -1,83 +0,0 @@ -# Backup and Restore Guide - -## Docker and Ansible - -When using docker or ansible, there should be a `volumes` folder, which contains both the database, and all the pictures. Copy this folder to the new instance to restore your data. - -### Incremental Database backup - -To incrementally backup the DB to an `.sql` file, you can run: - -```bash -docker-compose exec postgres pg_dumpall -c -U lemmy > lemmy_dump_`date +%Y-%m-%d"_"%H_%M_%S`.sql -``` -### A Sample backup script - -```bash -#!/bin/sh -# DB Backup -ssh MY_USER@MY_IP "docker-compose exec postgres pg_dumpall -c -U lemmy" > ~/BACKUP_LOCATION/INSTANCE_NAME_dump_`date +%Y-%m-%d"_"%H_%M_%S`.sql - -# Volumes folder Backup -rsync -avP -zz --rsync-path="sudo rsync" MY_USER@MY_IP:/LEMMY_LOCATION/volumes ~/BACKUP_LOCATION/FOLDERNAME -``` - -### Restoring the DB - -If you need to restore from a `pg_dumpall` file, you need to first clear out your existing database - -```bash -# Drop the existing DB -docker exec -i FOLDERNAME_postgres_1 psql -U lemmy -c "DROP SCHEMA public CASCADE; CREATE SCHEMA public;" - -# Restore from the .sql backup -cat db_dump.sql | docker exec -i FOLDERNAME_postgres_1 psql -U lemmy # restores the db - -# This also might be necessary when doing a db import with a different password. -docker exec -i FOLDERNAME_postgres_1 psql -U lemmy -c "alter user lemmy with password 'bleh'" -``` - -### Changing your domain name - -If you haven't federated yet, you can change your domain name in the DB. **Warning: do not do this after you've federated, or it will break federation.** - -Get into `psql` for your docker: - -`docker-compose exec postgres psql -U lemmy` - -``` --- Post -update post set ap_id = replace (ap_id, 'old_domain', 'new_domain'); -update post set url = replace (url, 'old_domain', 'new_domain'); -update post set body = replace (body, 'old_domain', 'new_domain'); -update post set thumbnail_url = replace (thumbnail_url, 'old_domain', 'new_domain'); - -delete from post_aggregates_fast; -insert into post_aggregates_fast select * from post_aggregates_view; - --- Comments -update comment set ap_id = replace (ap_id, 'old_domain', 'new_domain'); -update comment set content = replace (content, 'old_domain', 'new_domain'); - -delete from comment_aggregates_fast; -insert into comment_aggregates_fast select * from comment_aggregates_view; - --- User -update user_ set actor_id = replace (actor_id, 'old_domain', 'new_domain'); -update user_ set avatar = replace (avatar, 'old_domain', 'new_domain'); - -delete from user_fast; -insert into user_fast select * from user_view; - --- Community -update community set actor_id = replace (actor_id, 'old_domain', 'new_domain'); - -delete from community_aggregates_fast; -insert into community_aggregates_fast select * from community_aggregates_view; -``` - -## More resources - -- https://stackoverflow.com/questions/24718706/backup-restore-a-dockerized-postgresql-database - - diff --git a/docs/src/administration/configuration.md b/docs/src/administration/configuration.md deleted file mode 100644 index 3958a004..00000000 --- a/docs/src/administration/configuration.md +++ /dev/null @@ -1,19 +0,0 @@ -# Configuration - -The configuration is based on the file [defaults.hjson](https://yerbamate.ml/LemmyNet/lemmy/src/branch/main/config/defaults.hjson). This file also contains documentation for all the available options. To override the defaults, you can copy the options you want to change into your local `config.hjson` file. - -The `defaults.hjson` and `config.hjson` files are located at `config/defaults.hjson` and`config/config.hjson`, respectively. To change these default locations, you can set these two environment variables: - -- LEMMY_CONFIG_LOCATION # config.hjson -- LEMMY_CONFIG_DEFAULTS_LOCATION # defaults.hjson - -Additionally, you can override any config files with environment variables. These have the same name as the config options, and are prefixed with `LEMMY_`. For example, you can override the `database.password` with `LEMMY_DATABASE__POOL_SIZE=10`. - -An additional option `LEMMY_DATABASE_URL` is available, which can be used with a PostgreSQL connection string like `postgres://lemmy:password@lemmy_db:5432/lemmy`, passing all connection details at once. - -If the Docker container is not used, manually create the database specified above by running the following commands: - -```bash -cd server -./db-init.sh -``` diff --git a/docs/src/administration/install_ansible.md b/docs/src/administration/install_ansible.md deleted file mode 100644 index ea04f53d..00000000 --- a/docs/src/administration/install_ansible.md +++ /dev/null @@ -1,25 +0,0 @@ -# Ansible Installation - -This is the same as the [Docker installation](install_docker.md), except that Ansible handles all of it automatically. It also does some extra things like setting up TLS and email for your Lemmy instance. - -First, you need to [install Ansible on your local computer](https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html) (e.g. using `sudo apt install ansible`) or the equivalent for you platform. - -Then run the following commands on your local computer: - -```bash -git clone https://github.com/LemmyNet/lemmy.git -cd lemmy/ansible/ -cp inventory.example inventory -nano inventory # enter your server, domain, contact email -# If the command below fails, you may need to comment out this line -# In the ansible.cfg file: -# interpreter_python=/usr/bin/python3 -ansible-playbook lemmy.yml --become -``` - -To update to a new version, just run the following in your local Lemmy repo: -```bash -git pull origin main -cd ansible -ansible-playbook lemmy.yml --become -``` diff --git a/docs/src/administration/install_docker.md b/docs/src/administration/install_docker.md deleted file mode 100644 index 4796fe52..00000000 --- a/docs/src/administration/install_docker.md +++ /dev/null @@ -1,55 +0,0 @@ -# Docker Installation - -Make sure you have both docker and docker-compose(>=`1.24.0`) installed. On Ubuntu, just run `apt install docker-compose docker.io`. Next, - -```bash -# create a folder for the lemmy files. the location doesnt matter, you can put this anywhere you want -mkdir /lemmy -cd /lemmy - -# download default config files -wget https://raw.githubusercontent.com/LemmyNet/lemmy/main/docker/prod/docker-compose.yml -wget https://raw.githubusercontent.com/LemmyNet/lemmy/main/docker/lemmy.hjson -wget https://raw.githubusercontent.com/LemmyNet/lemmy/main/docker/iframely.config.local.js - -# Set correct permissions for pictrs folder -mkdir -p volumes/pictrs -sudo chown -R 991:991 volumes/pictrs -``` - -Open up your `docker-compose.yml`, and make sure `LEMMY_EXTERNAL_HOST` for `lemmy-ui` is set to your correct host. - -``` -- LEMMY_INTERNAL_HOST=lemmy:8536 -- LEMMY_EXTERNAL_HOST=your-domain.com -- LEMMY_HTTPS=false -``` - -If you'd like a different database password, you should also change it in the `docker-compose.yml` **before** your first run. - -After this, have a look at the [config file](configuration.md) named `lemmy.hjson`, and adjust it, in particular the hostname, and possibly the db password. Then run: - -`docker-compose up -d` - -You can access the lemmy-ui at `http://localhost:1235` - -To make Lemmy available outside the server, you need to setup a reverse proxy, like Nginx. [A sample nginx config](https://raw.githubusercontent.com/LemmyNet/lemmy/main/ansible/templates/nginx.conf), could be setup with: - -```bash -wget https://raw.githubusercontent.com/LemmyNet/lemmy/main/ansible/templates/nginx.conf -# Replace the {{ vars }} -# The default lemmy_port is 8536 -# The default lemmy_ui_port is 1235 -sudo mv nginx.conf /etc/nginx/sites-enabled/lemmy.conf -``` - -You will also need to setup TLS, for example with [Let's Encrypt](https://letsencrypt.org/). After this you need to restart Nginx to reload the config. - -## Updating - -To update to the newest version, you can manually change the version in `docker-compose.yml`. Alternatively, fetch the latest version from our git repo: - -```bash -wget https://raw.githubusercontent.com/LemmyNet/lemmy/main/docker/prod/docker-compose.yml -docker-compose up -d -``` diff --git a/docs/src/contributing/contributing.md b/docs/src/contributing/contributing.md deleted file mode 100644 index ed6c945f..00000000 --- a/docs/src/contributing/contributing.md +++ /dev/null @@ -1,40 +0,0 @@ -# Contributing - -Information about contributing to Lemmy, whether it is translating, testing, designing or programming. - -## Issue tracking / Repositories - -- [GitHub (for issues and pull requests)](https://github.com/LemmyNet/lemmy) -- [Gitea (only for pull requests)](https://yerbamate.ml/LemmyNet/lemmy) -- [Codeberg](https://codeberg.org/LemmyNet/lemmy) - -## Translating - -Check out [Lemmy's Weblate](https://weblate.yerbamate.ml/projects/lemmy/) for translations. - - -## Architecture - -### Front end - -- The front end is written in `typescript`, using a react-like framework called [inferno](https://infernojs.org/). All UI elements are reusable `.tsx` components. -- The front end repository is [lemmy-ui](https://github.com/LemmyNet/lemmy-ui). -- The routes are at `src/shared/routes.ts`. -- The components are located in `src/shared/components`. - -### Back end - -- The back end is written in `rust`, using `diesel`, and `actix`. -- The server source code is split into main sections in `src`. These include: - - `db` - The low level database actions. - - Database additions are done using diesel migrations. Run `diesel migration generate xxxxx` to add new things. - - `api` - The high level user interactions (things like `CreateComment`) - - `routes` - The server endpoints . - - `apub` - The activitypub conversions. - - `websocket` - Creates the websocket server. - -## Linting / Formatting - -- Every front and back end commit is automatically formatted then linted using `husky`, and `lint-staged`. -- Rust with `cargo fmt` and `cargo clippy`. -- Typescript with `prettier` and `eslint`. diff --git a/docs/src/contributing/custom_frontend.md b/docs/src/contributing/custom_frontend.md deleted file mode 100644 index 08568576..00000000 --- a/docs/src/contributing/custom_frontend.md +++ /dev/null @@ -1,66 +0,0 @@ -# Creating a Custom Frontend - -The backend and frontend are completely decoupled, and run in independent Docker containers. They only communicate over the [Lemmy API](websocket_http_api.md), which makes it quite easy to write alternative frontends. - -This creates a lot of potential for custom frontends, which could change much of the design and user experience of Lemmy. For example, it would be possible to create a frontend in the style of a traditional forum like [phpBB](https://www.phpbb.com/), or a question-and-answer site like [stackoverflow](https://stackoverflow.com/). All without having to think about database queries, authentification or ActivityPub, which you essentially get for free. - -## Development - -You can use any language to create a custom frontend. The easiest option would be forking our [official frontend](https://github.com/LemmyNet/lemmy-ui), [lemmy-lite](https://github.com/IronOxidizer/lemmy-lite), or the [lemmy-frontend-example](https://github.com/LemmyNet/lemmy-front-end-example). In any case, the principle is the same: bind to `LEMMY_EXTERNAL_HOST` (default: `localhost:8536`) and handle requests using the Lemmy API at `LEMMY_INTERNAL_HOST` (default: `lemmy:8536`). Also use `LEMMY_HTTPS` to generate links with the correct protocol. - -The next step is building a Docker image from your frontend. If you forked an existing project, it should already include a `Dockerfile` and instructions to build it. Otherwise, try searching for your language on [dockerhub](https://hub.docker.com/), official images usually have build instructions in their readme. Build a Docker image with a tag, then look for the following section in `docker/dev/docker-compose.yml`: - -``` - lemmy-ui: - image: dessalines/lemmy-ui:v0.8.10 - ports: - - "1235:1234" - restart: always - environment: - - LEMMY_INTERNAL_HOST=lemmy:8536 - - LEMMY_EXTERNAL_HOST=localhost:8536 - - LEMMY_HTTPS=false - depends_on: - - lemmy -``` - -All you need to do is replace the value for `image` with the tag of your own Docker image (and possibly the environment variables if you need different ones). Then run `./docker_update.sh`, and after compilation, your frontend will be available on `http://localhost:1235`. You can also make the same change to `docker/federation/docker-compose.yml` and run `./start-local-instances.bash` to test federation with your frontend. - -## Deploy with Docker - -After building the Docker image, you need to push it to a Docker registry (such as [dockerhub](https://hub.docker.com/)). Then update the `docker-compose.yml` on your server, replacing the `image` for `lemmy-ui`, just as described above. Run `docker-compose.yml`, and after a short wait, your instance will use the new frontend. - -Note, if your instance is deployed with Ansible, it will override `docker-compose.yml` with every run, reverting back to the default frontend. In that case you should copy the `ansible/` folder from this project to your own repository, and adjust `docker-compose.yml` directly in the repo. - -It is also possible to use multiple frontends for the same Lemmy instance, either using subdomains or subfolders. To do that, don't edit the `lemmy-ui` section in `docker-compose.yml`, but duplicate it, adjusting the name, image and port so they are distinct for each. Then edit your nginx config to pass requests to the appropriate frontend, depending on the subdomain or path. - -## Translations - -You can add the [lemmy-translations](https://github.com/LemmyNet/lemmy-translations) repository to your project as a [git submodule](https://git-scm.com/book/en/v2/Git-Tools-Submodules). That way you can take advantage of same translations used in the official frontend, and you will also receive new translations contributed via weblate. - -## Rate limiting - -Lemmy does rate limiting for many actions based on the client IP. But if you make any API calls on the server side (eg in the case of server-side rendering, or javascript pre-rendering), Lemmy will take the IP of the Docker container. Meaning that all requests come from the same IP, and get rate limited much earlier. To avoid this problem, you need to pass the headers `X-REAL-IP` and `X-FORWARDED-FOR` on to Lemmy (the headers are set by our nginx config). - -Here is an example snipped for NodeJS: - -```javascript -function setForwardedHeaders( - headers: IncomingHttpHeaders -): { [key: string]: string } { - let out = { - host: headers.host, - }; - if (headers['x-real-ip']) { - out['x-real-ip'] = headers['x-real-ip']; - } - if (headers['x-forwarded-for']) { - out['x-forwarded-for'] = headers['x-forwarded-for']; - } - - return out; -} - -let headers = setForwardedHeaders(req.headers); -let client = new LemmyHttp(httpUri, headers); -``` \ No newline at end of file diff --git a/docs/src/contributing/docker_development.md b/docs/src/contributing/docker_development.md deleted file mode 100644 index ee035dd2..00000000 --- a/docs/src/contributing/docker_development.md +++ /dev/null @@ -1,32 +0,0 @@ -# Docker Development - -## Dependencies (on Ubuntu) - -```bash -sudo apt install git docker-compose -sudo systemctl start docker -git clone https://github.com/LemmyNet/lemmy -``` - -## Running - -```bash -cd docker/dev -./docker_update.sh -``` - -and go to http://localhost:1235. - -*Note: many features (like docs and pictures) will not work without using an nginx profile like that in `ansible/templates/nginx.conf`. - -To speed up the Docker compile, add the following to `/etc/docker/daemon.json` and restart Docker. -``` -{ - "features": { - "buildkit": true - } -} -``` - -If the build is still too slow, you will have to use a -[local build](local_development.md) instead. diff --git a/docs/src/contributing/federation_development.md b/docs/src/contributing/federation_development.md deleted file mode 100644 index fd625d60..00000000 --- a/docs/src/contributing/federation_development.md +++ /dev/null @@ -1,69 +0,0 @@ -# Federation Development - -## Running locally - -Install the dependencies as described in [Docker development](docker_development.md). Then run the following - -```bash -cd docker/federation -./start-local-instances.bash -``` - -The federation test sets up 5 instances: - -Instance | Username | Location | Notes ---- | --- | --- | --- -lemmy-alpha | lemmy_alpha | [127.0.0.1:8540](http://127.0.0.1:8540) | federated with all other instances -lemmy-beta | lemmy_beta | [127.0.0.1:8550](http://127.0.0.1:8550) | federated with all other instances -lemmy-gamma | lemmy_gamma | [127.0.0.1:8560](http://127.0.0.1:8560) | federated with all other instances -lemmy-delta | lemmy_delta | [127.0.0.1:8570](http://127.0.0.1:8570) | only allows federation with lemmy-beta -lemmy-epsilon | lemmy_epsilon | [127.0.0.1:8580](http://127.0.0.1:8580) | uses blocklist, has lemmy-alpha blocked - -You can log into each using the instance name, and `lemmy` as the password, IE (`lemmy_alpha`, `lemmy`). - -To start federation between instances, visit one of them and search for a user, community or post, like this. Note that -the Lemmy backend runs on a different port than the frontend, so you have to increment the port number from -the URL bar by one. -- `!main@lemmy-alpha:8541` -- `http://lemmy-beta:8551/post/3` -- `@lemmy-gamma@lemmy-gamma:8561` - -Firefox containers are a good way to test them interacting. - -## Running on a server - -Note that federation is currently in alpha. **Only use it for testing**, not on any production server, and be aware that turning on federation may break your instance. - -Follow the normal installation instructions, either with [Ansible](../administration/install_ansible.md) or -[manually](../administration/install_docker.md). Then replace the line `image: dessalines/lemmy:v0.x.x` in -`/lemmy/docker-compose.yml` with `image: dessalines/lemmy:federation`. Also add the following in -`/lemmy/lemmy.hjson`: - -``` - federation: { - enabled: true - tls_enabled: true, - allowed_instances: example.com, - } -``` - -Afterwards, and whenever you want to update to the latest version, run these commands on the server: - -``` -cd /lemmy/ -sudo docker-compose pull -sudo docker-compose up -d -``` - -## Security Model - -- HTTP signature verify: This ensures that activity really comes from the activity that it claims -- check_is_apub_valid : Makes sure its in our allowed instances list -- Lower level checks: To make sure that the user that creates/updates/removes a post is actually on the same instance as that post - -For the last point, note that we are *not* checking whether the actor that sends the create activity for a post is -actually identical to the post's creator, or that the user that removes a post is a mod/admin. These things are checked -by the API code, and its the responsibility of each instance to check user permissions. This does not leave any attack -vector, as a normal instance user cant do actions that violate the API rules. The only one who could do that is the -admin (and the software deployed by the admin). But the admin can do anything on the instance, including send activities -from other user accounts. So we wouldnt actually gain any security by checking mod permissions or similar. \ No newline at end of file diff --git a/docs/src/contributing/local_development.md b/docs/src/contributing/local_development.md deleted file mode 100644 index 114a5458..00000000 --- a/docs/src/contributing/local_development.md +++ /dev/null @@ -1,88 +0,0 @@ -### Install build requirements -#### Ubuntu -``` -sudo apt install git cargo libssl-dev pkg-config libpq-dev yarn curl gnupg2 espeak -# install yarn -curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - -echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list -sudo apt update && sudo apt install yarn -``` - -#### macOS - -Install Rust using [the recommended option on rust-lang.org](https://www.rust-lang.org/tools/install) (rustup). - -Then, install [Homebrew](https://brew.sh/) if you don't already have it installed. - -Finally, install Node and Yarn. - -``` -brew install node yarn -``` - -### Get the back end source code -``` -git clone https://github.com/LemmyNet/lemmy.git -# or alternatively from gitea -# git clone https://yerbamate.ml/LemmyNet/lemmy.git -``` - -### Build the backend (Rust) -``` -cargo build -# for development, use `cargo check` instead) -``` - -### Get the front end source code -``` -git clone https://github.com/LemmyNet/lemmy-ui.git -# get the translations -git submodule init -git submodule update --remote -``` - -### Setup postgresql -#### Ubuntu -``` -sudo apt install postgresql -sudo systemctl start postgresql - -# Either execute db-init.sh, or manually initialize the postgres database: -sudo -u postgres psql -c "create user lemmy with password 'password' superuser;" -U postgres -sudo -u postgres psql -c 'create database lemmy with owner lemmy;' -U postgres -export LEMMY_DATABASE_URL=postgres://lemmy:password@localhost:5432/lemmy -``` - -#### macOS -``` -brew install postgresql -brew services start postgresql -/usr/local/opt/postgres/bin/createuser -s postgres - -# Either execute db-init.sh, or manually initialize the postgres database: -psql -c "create user lemmy with password 'password' superuser;" -U postgres -psql -c 'create database lemmy with owner lemmy;' -U postgres -export LEMMY_DATABASE_URL=postgres://lemmy:password@localhost:5432/lemmy -``` - -### Run a local development instance -``` -cd lemmy -cargo run -``` - -Then open [localhost:1235](http://localhost:1235) in your browser. To reload back-end changes, you will have to rerun `cargo run`. You can use `cargo check` as a faster way to find compilation errors. - -To do front end development: - -``` -cd lemmy-ui -yarn -yarn dev -``` - -and go to [localhost:1234](http://localhost:1234). Front end saves should rebuild the project. - -Note that this setup doesn't include image uploads or link previews (provided by pict-rs and -iframely respectively). If you want to test those, you should use the -[Docker development](docker_development.md). diff --git a/docs/src/contributing/tests.md b/docs/src/contributing/tests.md deleted file mode 100644 index e4cfa65a..00000000 --- a/docs/src/contributing/tests.md +++ /dev/null @@ -1,20 +0,0 @@ -### Tests - -#### Rust - -After installing [local development dependencies](local_development.md), run the -following commands: - -```bash -psql -U lemmy -c "DROP SCHEMA public CASCADE; CREATE SCHEMA public;" -./test.sh -``` - -### Federation - -Install the [Docker development dependencies](docker_development.md), and execute: - -``` -cd docker/federation -./run-tests.bash -``` diff --git a/docs/src/contributing/theming.md b/docs/src/contributing/theming.md deleted file mode 100644 index 2610b5fb..00000000 --- a/docs/src/contributing/theming.md +++ /dev/null @@ -1,19 +0,0 @@ -# Theming Guide - -Lemmy uses [Bootstrap v4](https://getbootstrap.com/), and very few custom css classes, so any bootstrap v4 compatible theme should work fine. - -## Creating - -- Use a tool like [bootstrap.build](https://bootstrap.build/) to create a bootstrap v4 theme. Export the `bootstrap.min.css` once you're done, and save the `_variables.scss` too. - -## Testing - -- To test out a theme, you can either use your browser's web tools, or a plugin like stylus to copy-paste a theme, when viewing Lemmy. - -## Adding - -1. Fork the [lemmy-ui](https://github.com/LemmyNet/lemmy-ui). -1. Copy `{my-theme-name}.min.css` to `src/assets/css/themes`. (You can also copy the `_variables.scss` here if you want). -1. Go to `src/shared/utils.ts` and add `{my-theme-name}` to the themes list. -1. Test locally -1. Do a pull request with those changes. diff --git a/docs/src/contributing/websocket_http_api.md b/docs/src/contributing/websocket_http_api.md deleted file mode 100644 index bb9b063a..00000000 --- a/docs/src/contributing/websocket_http_api.md +++ /dev/null @@ -1,2297 +0,0 @@ -# Lemmy API - -*Note: this may lag behind the actual API endpoints [here](../src/api). The API should be considered unstable and may change any time.* - -<!-- toc --> - -- [Data types](#data-types) - * [Lemmy types](#lemmy-types) - * [Lower-level types](#lower-level-types) -- [Basic usage](#basic-usage) - * [WebSocket](#websocket) - + [Testing with Websocat](#testing-with-websocat) - + [Testing with the WebSocket JavaScript API](#testing-with-the-websocket-javascript-api) - * [HTTP](#http) - + [Testing with Curl](#testing-with-curl) - - [Get Example](#get-example) - - [Post Example](#post-example) -- [Rate limits](#rate-limits) -- [Errors](#errors) -- [API documentation](#api-documentation) - * [Sort Types](#sort-types) - * [Undoing actions](#undoing-actions) - * [Websocket vs HTTP](#websocket-vs-http) - * [User / Authentication / Admin actions](#user--authentication--admin-actions) - + [Login](#login) - - [Request](#request) - - [Response](#response) - - [HTTP](#http-1) - + [Register](#register) - - [Request](#request-1) - - [Response](#response-1) - - [HTTP](#http-2) - + [Get Captcha](#get-captcha) - - [Request](#request-2) - - [Response](#response-2) - - [HTTP](#http-3) - + [Get User Details](#get-user-details) - - [Request](#request-3) - - [Response](#response-3) - - [HTTP](#http-4) - + [Save User Settings](#save-user-settings) - - [Request](#request-4) - - [Response](#response-4) - - [HTTP](#http-5) - + [Get Replies / Inbox](#get-replies--inbox) - - [Request](#request-5) - - [Response](#response-5) - - [HTTP](#http-6) - + [Get User Mentions](#get-user-mentions) - - [Request](#request-6) - - [Response](#response-6) - - [HTTP](#http-7) - + [Mark User Mention as read](#mark-user-mention-as-read) - - [Request](#request-7) - - [Response](#response-7) - - [HTTP](#http-8) - + [Get Private Messages](#get-private-messages) - - [Request](#request-8) - - [Response](#response-8) - - [HTTP](#http-9) - + [Create Private Message](#create-private-message) - - [Request](#request-9) - - [Response](#response-9) - - [HTTP](#http-10) - + [Edit Private Message](#edit-private-message) - - [Request](#request-10) - - [Response](#response-10) - - [HTTP](#http-11) - + [Delete Private Message](#delete-private-message) - - [Request](#request-11) - - [Response](#response-11) - - [HTTP](#http-12) - + [Mark Private Message as Read](#mark-private-message-as-read) - - [Request](#request-12) - - [Response](#response-12) - - [HTTP](#http-13) - + [Mark All As Read](#mark-all-as-read) - - [Request](#request-13) - - [Response](#response-13) - - [HTTP](#http-14) - + [Delete Account](#delete-account) - - [Request](#request-14) - - [Response](#response-14) - - [HTTP](#http-15) - + [Add admin](#add-admin) - - [Request](#request-15) - - [Response](#response-15) - - [HTTP](#http-16) - + [Ban user](#ban-user) - - [Request](#request-16) - - [Response](#response-16) - - [HTTP](#http-17) - + [User Join](#user-join) - - [Request](#request-17) - - [Response](#response-17) - - [HTTP](#http-18) - * [Site](#site) - + [List Categories](#list-categories) - - [Request](#request-18) - - [Response](#response-18) - - [HTTP](#http-19) - + [Search](#search) - - [Request](#request-19) - - [Response](#response-19) - - [HTTP](#http-20) - + [Get Modlog](#get-modlog) - - [Request](#request-20) - - [Response](#response-20) - - [HTTP](#http-21) - + [Create Site](#create-site) - - [Request](#request-21) - - [Response](#response-21) - - [HTTP](#http-22) - + [Edit Site](#edit-site) - - [Request](#request-22) - - [Response](#response-22) - - [HTTP](#http-23) - + [Get Site](#get-site) - - [Request](#request-23) - - [Response](#response-23) - - [HTTP](#http-24) - + [Transfer Site](#transfer-site) - - [Request](#request-24) - - [Response](#response-24) - - [HTTP](#http-25) - + [Get Site Config](#get-site-config) - - [Request](#request-25) - - [Response](#response-25) - - [HTTP](#http-26) - + [Save Site Config](#save-site-config) - - [Request](#request-26) - - [Response](#response-26) - - [HTTP](#http-27) - * [Community](#community) - + [Get Community](#get-community) - - [Request](#request-27) - - [Response](#response-27) - - [HTTP](#http-28) - + [Create Community](#create-community) - - [Request](#request-28) - - [Response](#response-28) - - [HTTP](#http-29) - + [List Communities](#list-communities) - - [Request](#request-29) - - [Response](#response-29) - - [HTTP](#http-30) - + [Ban from Community](#ban-from-community) - - [Request](#request-30) - - [Response](#response-30) - - [HTTP](#http-31) - + [Add Mod to Community](#add-mod-to-community) - - [Request](#request-31) - - [Response](#response-31) - - [HTTP](#http-32) - + [Edit Community](#edit-community) - - [Request](#request-32) - - [Response](#response-32) - - [HTTP](#http-33) - + [Delete Community](#delete-community) - - [Request](#request-33) - - [Response](#response-33) - - [HTTP](#http-34) - + [Remove Community](#remove-community) - - [Request](#request-34) - - [Response](#response-34) - - [HTTP](#http-35) - + [Follow Community](#follow-community) - - [Request](#request-35) - - [Response](#response-35) - - [HTTP](#http-36) - + [Get Followed Communities](#get-followed-communities) - - [Request](#request-36) - - [Response](#response-36) - - [HTTP](#http-37) - + [Transfer Community](#transfer-community) - - [Request](#request-37) - - [Response](#response-37) - - [HTTP](#http-38) - + [Community Join](#community-join) - - [Request](#request-38) - - [Response](#response-38) - - [HTTP](#http-39) - * [Post](#post) - + [Create Post](#create-post) - - [Request](#request-39) - - [Response](#response-39) - - [HTTP](#http-40) - + [Get Post](#get-post) - - [Request](#request-40) - - [Response](#response-40) - - [HTTP](#http-41) - + [Get Posts](#get-posts) - - [Request](#request-41) - - [Response](#response-41) - - [HTTP](#http-42) - + [Create Post Like](#create-post-like) - - [Request](#request-42) - - [Response](#response-42) - - [HTTP](#http-43) - + [Edit Post](#edit-post) - - [Request](#request-43) - - [Response](#response-43) - - [HTTP](#http-44) - + [Delete Post](#delete-post) - - [Request](#request-44) - - [Response](#response-44) - - [HTTP](#http-45) - + [Remove Post](#remove-post) - - [Request](#request-45) - - [Response](#response-45) - - [HTTP](#http-46) - + [Lock Post](#lock-post) - - [Request](#request-46) - - [Response](#response-46) - - [HTTP](#http-47) - + [Sticky Post](#sticky-post) - - [Request](#request-47) - - [Response](#response-47) - - [HTTP](#http-48) - + [Save Post](#save-post) - - [Request](#request-48) - - [Response](#response-48) - - [HTTP](#http-49) - + [Post Join](#post-join) - - [Request](#request-49) - - [Response](#response-49) - - [HTTP](#http-50) - * [Comment](#comment) - + [Create Comment](#create-comment) - - [Request](#request-50) - - [Response](#response-50) - - [HTTP](#http-51) - + [Edit Comment](#edit-comment) - - [Request](#request-51) - - [Response](#response-51) - - [HTTP](#http-52) - + [Delete Comment](#delete-comment) - - [Request](#request-52) - - [Response](#response-52) - - [HTTP](#http-53) - + [Remove Comment](#remove-comment) - - [Request](#request-53) - - [Response](#response-53) - - [HTTP](#http-54) - + [Get Comments](#get-comments) - - [Request](#request-54) - - [Response](#response-54) - - [HTTP](#http-55) - + [Mark Comment as Read](#mark-comment-as-read) - - [Request](#request-55) - - [Response](#response-55) - - [HTTP](#http-56) - + [Save Comment](#save-comment) - - [Request](#request-56) - - [Response](#response-56) - - [HTTP](#http-57) - + [Create Comment Like](#create-comment-like) - - [Request](#request-57) - - [Response](#response-57) - - [HTTP](#http-58) - * [RSS / Atom feeds](#rss--atom-feeds) - + [All](#all) - + [Community](#community-1) - + [User](#user) - * [Images](#images) - + [Get](#get) - + [Create](#create) - - [Request](#request-58) - - [Response](#response-58) - + [Delete](#delete) - -<!-- tocstop --> - -## Data types - -### Lemmy types - -The fields for objects like Users, Comments, Communities, and Posts, are in the [lemmy_db](https://github.com/LemmyNet/lemmy/tree/main/lemmy_db/src) folder, with the suffix `_view`. The main types are: - -- [CommentView](https://github.com/LemmyNet/lemmy/blob/main/lemmy_db/src/comment_view.rs) -- [CommunityView](https://github.com/LemmyNet/lemmy/blob/main/lemmy_db/src/community_view.rs) -- [PostView](https://github.com/LemmyNet/lemmy/blob/main/lemmy_db/src/post_view.rs) -- [UserView](https://github.com/LemmyNet/lemmy/blob/main/lemmy_db/src/user_view.rs) -- [PrivateMessageView](https://github.com/LemmyNet/lemmy/blob/main/lemmy_db/src/private_message_view.rs) -- [UserMentionView](https://github.com/LemmyNet/lemmy/blob/main/lemmy_db/src/user_mention_view.rs) -- [SiteView](https://github.com/LemmyNet/lemmy/blob/main/lemmy_db/src/site_view.rs) -- [Category](https://github.com/LemmyNet/lemmy/blob/main/lemmy_db/src/category.rs) -- [Moderator Views](https://github.com/LemmyNet/lemmy/blob/main/lemmy_db/src/moderator_views.rs) - -The requests and responses, although copied below, are most up to date in [lemmy_structs](https://github.com/LemmyNet/lemmy/tree/main/lemmy_structs/src). - -### Lower-level types - -- `i16`, `i32` and `i64` are respectively [16-bit](https://en.wikipedia.org/wiki/16-bit), [32-bit](https://en.wikipedia.org/wiki/32-bit) and [64-bit](https://en.wikipedia.org/wiki/64-bit_computing) integers. -- <code>Option<***SomeType***></code> designates an option which may be omitted in requests and not be present in responses. It will be of type ***SomeType***. -- <code>Vec<***SomeType***></code> is a list which contains objects of type ***SomeType***. -- `chrono::NaiveDateTime` is a timestamp string in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format. Timestamps will be UTC. - -## Basic usage - -Request and response strings are in [JSON format](https://www.json.org). - -### WebSocket - -Connect to <code>ws://***host***/api/v1/ws</code> to get started. - -If the ***`host`*** supports secure connections, you can use <code>wss://***host***/api/v1/ws</code>. - -To receive websocket messages, you must join a room / context. The four available are: - -- [UserJoin](#user-join). Receives replies, private messages, etc. -- [PostJoin](#post-join). Receives new comments on a post. -- [CommunityJoin](#community-join). Receives front page / community posts. -- [ModJoin](#mod-join). Receives community moderator updates like reports. - -#### Testing with Websocat - -[Websocat link](https://github.com/vi/websocat) - -`websocat ws://127.0.0.1:8536/api/v1/ws -nt` - -A simple test command: -`{"op": "ListCategories"}` - -#### Testing with the WebSocket JavaScript API - -[WebSocket JavaScript API](https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API) -```javascript -var ws = new WebSocket("ws://" + host + "/api/v1/ws"); -ws.onopen = function () { - console.log("Connection succeed!"); - ws.send(JSON.stringify({ - op: "ListCategories" - })); -}; -``` -### HTTP - -Endpoints are at <code>http://***host***/api/v1/***endpoint***</code>. They'll be listed below for each action. - -#### Testing with Curl - -##### Get Example - -``` -curl /community/list?sort=Hot -``` - -##### Post Example - -``` -curl -i -H \ -"Content-Type: application/json" \ --X POST \ --d '{ - "comment_id": X, - "post_id": X, - "score": X, - "auth": "..." -}' \ -/comment/like -``` - -## Rate limits - -- 1 per hour for signups and community creation. -- 1 per 10 minutes for post creation. -- 30 actions per minute for post voting and comment creation. -- Everything else is not rate-limited. - -## Errors -```rust -{ - op: String, - message: String, -} -``` - -## API documentation - -### Sort Types - -These go wherever there is a `sort` field. The available sort types are: - -- `Active` - the hottest posts/communities, depending on votes, and newest comment publish date. -- `Hot` - the hottest posts/communities, depending on votes and publish date. -- `New` - the newest posts/communities -- `TopDay` - the most upvoted posts/communities of the current day. -- `TopWeek` - the most upvoted posts/communities of the current week. -- `TopMonth` - the most upvoted posts/communities of the current month. -- `TopYear` - the most upvoted posts/communities of the current year. -- `TopAll` - the most upvoted posts/communities on the current instance. - -### Undoing actions - -Whenever you see a `deleted: bool`, `removed: bool`, `read: bool`, `locked: bool`, etc, you can undo this action by sending `false`. - -### Websocket vs HTTP - -- Below are the websocket JSON requests / responses. For HTTP, ignore all fields except those inside `data`. -- For example, an http login will be a `POST` `{username_or_email: X, password: X}` - -### User / Authentication / Admin actions - -#### Login - -The `jwt` string should be stored and used anywhere `auth` is called for. - -##### Request -```rust -{ - op: "Login", - data: { - username_or_email: String, - password: String - } -} -``` -##### Response -```rust -{ - op: "Login", - data: { - jwt: String, - } -} -``` - -##### HTTP - -`POST /user/login` - -#### Register - -Only the first user will be able to be the admin. - -##### Request -```rust -{ - op: "Register", - data: { - username: String, - email: Option<String>, - password: String, - password_verify: String, - admin: bool, - captcha_uuid: Option<String>, // Only checked if these are enabled in the server - captcha_answer: Option<String>, - } -} -``` -##### Response -```rust -{ - op: "Register", - data: { - jwt: String, - } -} -``` - -##### HTTP - -`POST /user/register` - -#### Get Captcha - -These expire after 10 minutes. - -##### Request -```rust -{ - op: "GetCaptcha", -} -``` -##### Response -```rust -{ - op: "GetCaptcha", - data: { - ok?: { // Will be undefined if captchas are disabled - png: String, // A Base64 encoded png - wav: Option<String>, // A Base64 encoded wav audio file - uuid: String, - } - } -} -``` - -##### HTTP - -`GET /user/get_captcha` - -#### Get User Details - -`username` can only be used for local users. To get details for a federated user, pass `user_id` instead. - -##### Request -```rust -{ - op: "GetUserDetails", - data: { - user_id: Option<i32>, - username: Option<String>, - sort: String, - page: Option<i64>, - limit: Option<i64>, - community_id: Option<i32>, - saved_only: bool, - auth: Option<String>, - } -} -``` -##### Response -```rust -{ - op: "GetUserDetails", - data: { - user: UserView, - follows: Vec<CommunityFollowerView>, - moderates: Vec<CommunityModeratorView>, - comments: Vec<CommentView>, - posts: Vec<PostView>, - } -} -``` -##### HTTP - -`GET /user` - -#### Save User Settings -##### Request -```rust -{ - op: "SaveUserSettings", - data: { - show_nsfw: bool, - theme: String, // Default 'darkly' - default_sort_type: i16, // The Sort types from above, zero indexed as a number - default_listing_type: i16, // Post listing types are `All, Subscribed, Community` - lang: String, - avatar: Option<String>, - banner: Option<String>, - preferred_username: Option<String>, - email: Option<String>, - bio: Option<String>, - matrix_user_id: Option<String>, - new_password: Option<String>, - new_password_verify: Option<String>, - old_password: Option<String>, - show_avatars: bool, - send_notifications_to_email: bool, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "SaveUserSettings", - data: { - jwt: String - } -} -``` -##### HTTP - -`PUT /user/save_user_settings` - -#### Get Replies / Inbox -##### Request -```rust -{ - op: "GetReplies", - data: { - sort: String, - page: Option<i64>, - limit: Option<i64>, - unread_only: bool, - auth: String - } -} -``` -##### Response -```rust -{ - op: "GetReplies", - data: { - replies: Vec<ReplyView>, - } -} -``` -##### HTTP - -`GET /user/replies` - - -#### Get User Mentions -##### Request -```rust -{ - op: "GetUserMentions", - data: { - sort: String, - page: Option<i64>, - limit: Option<i64>, - unread_only: bool, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "GetUserMentions", - data: { - mentions: Vec<UserMentionView>, - } -} -``` - -##### HTTP - -`GET /user/mention` - -#### Mark User Mention as read - -Only the recipient can do this. - -##### Request -```rust -{ - op: "MarkUserMentionAsRead", - data: { - user_mention_id: i32, - read: bool, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "MarkUserMentionAsRead", - data: { - mention: UserMentionView, - } -} -``` -##### HTTP - -`POST /user/mention/mark_as_read` - -#### Get Private Messages -##### Request -```rust -{ - op: "GetPrivateMessages", - data: { - unread_only: bool, - page: Option<i64>, - limit: Option<i64>, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "GetPrivateMessages", - data: { - messages: Vec<PrivateMessageView>, - } -} -``` - -##### HTTP - -`GET /private_message/list` - -#### Create Private Message -##### Request -```rust -{ - op: "CreatePrivateMessage", - data: { - content: String, - recipient_id: i32, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "CreatePrivateMessage", - data: { - message: PrivateMessageView, - } -} -``` - -##### HTTP - -`POST /private_message` - -#### Edit Private Message -##### Request -```rust -{ - op: "EditPrivateMessage", - data: { - edit_id: i32, - content: String, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "EditPrivateMessage", - data: { - message: PrivateMessageView, - } -} -``` - -##### HTTP - -`PUT /private_message` - -#### Delete Private Message -##### Request -```rust -{ - op: "DeletePrivateMessage", - data: { - edit_id: i32, - deleted: bool, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "DeletePrivateMessage", - data: { - message: PrivateMessageView, - } -} -``` - -##### HTTP - -`POST /private_message/delete` - -#### Mark Private Message as Read - -Only the recipient can do this. - -##### Request -```rust -{ - op: "MarkPrivateMessageAsRead", - data: { - edit_id: i32, - read: bool, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "MarkPrivateMessageAsRead", - data: { - message: PrivateMessageView, - } -} -``` - -##### HTTP - -`POST /private_message/mark_as_read` - -#### Mark All As Read - -Marks all user replies and mentions as read. - -##### Request -```rust -{ - op: "MarkAllAsRead", - data: { - auth: String - } -} -``` -##### Response -```rust -{ - op: "MarkAllAsRead", - data: { - replies: Vec<ReplyView>, - } -} -``` - -##### HTTP - -`POST /user/mark_all_as_read` - -#### Delete Account - -*Permanently deletes your posts and comments* - -##### Request -```rust -{ - op: "DeleteAccount", - data: { - password: String, - auth: String - } -} -``` -##### Response -```rust -{ - op: "DeleteAccount", - data: { - jwt: String, - } -} -``` - -##### HTTP - -`POST /user/delete_account` - -#### Add admin -##### Request -```rust -{ - op: "AddAdmin", - data: { - user_id: i32, - added: bool, - auth: String - } -} -``` -##### Response -```rust -{ - op: "AddAdmin", - data: { - admins: Vec<UserView>, - } -} -``` -##### HTTP - -`POST /admin/add` - -#### Ban user -##### Request -```rust -{ - op: "BanUser", - data: { - user_id: i32, - ban: bool, - remove_data: Option<bool>, // Removes/Restores their comments, posts, and communities - reason: Option<String>, - expires: Option<i64>, - auth: String - } -} -``` -##### Response -```rust -{ - op: "BanUser", - data: { - user: UserView, - banned: bool, - } -} -``` -##### HTTP - -`POST /user/ban` - -#### User Join -##### Request -```rust -{ - op: "UserJoin", - data: { - auth: String - } -} -``` -##### Response -```rust -{ - op: "UserJoin", - data: { - joined: bool, - } -} -``` -##### HTTP - -`POST /user/join` - -#### Get Report Count - -If a community is supplied, returns the report count for only that community, otherwise returns the report count for all communities the user moderates. - -##### Request -```rust -{ - op: "GetReportCount", - data: { - community: Option<i32>, - auth: String - } -} -``` -##### Response -```rust -{ - op: "GetReportCount", - data: { - community: Option<i32>, - comment_reports: i64, - post_reports: i64, - } -} -``` -##### HTTP - -`GET /user/report_count` - -### Site -#### List Categories -##### Request -```rust -{ - op: "ListCategories" -} -``` -##### Response -```rust -{ - op: "ListCategories", - data: { - categories: Vec<Category> - } -} -``` -##### HTTP - -`GET /categories` - -#### Search - -Search types are `All, Comments, Posts, Communities, Users, Url` - -##### Request -```rust -{ - op: "Search", - data: { - q: String, - type_: String, - community_id: Option<i32>, - community_name: Option<String>, - sort: String, - page: Option<i64>, - limit: Option<i64>, - auth?: Option<String>, - } -} -``` -##### Response -```rust -{ - op: "Search", - data: { - type_: String, - comments: Vec<CommentView>, - posts: Vec<PostView>, - communities: Vec<CommunityView>, - users: Vec<UserView>, - } -} -``` -##### HTTP - -`GET /search` - -#### Get Modlog -##### Request -```rust -{ - op: "GetModlog", - data: { - mod_user_id: Option<i32>, - community_id: Option<i32>, - page: Option<i64>, - limit: Option<i64>, - } -} -``` -##### Response -```rust -{ - op: "GetModlog", - data: { - removed_posts: Vec<ModRemovePostView>, - locked_posts: Vec<ModLockPostView>, - removed_comments: Vec<ModRemoveCommentView>, - removed_communities: Vec<ModRemoveCommunityView>, - banned_from_community: Vec<ModBanFromCommunityView>, - banned: Vec<ModBanView>, - added_to_community: Vec<ModAddCommunityView>, - added: Vec<ModAddView>, - } -} -``` - -##### HTTP - -`GET /modlog` - -#### Create Site -##### Request -```rust -{ - op: "CreateSite", - data: { - name: String, - description: Option<String>, - icon: Option<String>, - banner: Option<String>, - auth: String - } -} -``` -##### Response -```rust -{ - op: "CreateSite", - data: { - site: SiteView, - } -} -``` - -##### HTTP - -`POST /site` - -#### Edit Site -##### Request -```rust -{ - op: "EditSite", - data: { - name: String, - description: Option<String>, - icon: Option<String>, - banner: Option<String>, - auth: String - } -} -``` -##### Response -```rust -{ - op: "EditSite", - data: { - site: SiteView, - } -} -``` -##### HTTP - -`PUT /site` - -#### Get Site -##### Request -```rust -{ - op: "GetSite" - data: { - auth: Option<String>, - } - -} -``` -##### Response -```rust -{ - op: "GetSite", - data: { - site: Option<SiteView>, - admins: Vec<UserView>, - banned: Vec<UserView>, - online: usize, // This is currently broken - version: String, - my_user: Option<User_>, // Gives back your user and settings if logged in - } -} -``` -##### HTTP - -`GET /site` - -#### Transfer Site -##### Request -```rust -{ - op: "TransferSite", - data: { - user_id: i32, - auth: String - } -} -``` -##### Response -```rust -{ - op: "TransferSite", - data: { - site: Option<SiteView>, - admins: Vec<UserView>, - banned: Vec<UserView>, - } -} -``` -##### HTTP - -`POST /site/transfer` - -#### Get Site Config -##### Request -```rust -{ - op: "GetSiteConfig", - data: { - auth: String - } -} -``` -##### Response -```rust -{ - op: "GetSiteConfig", - data: { - config_hjson: String, - } -} -``` -##### HTTP - -`GET /site/config` - -#### Save Site Config -##### Request -```rust -{ - op: "SaveSiteConfig", - data: { - config_hjson: String, - auth: String - } -} -``` -##### Response -```rust -{ - op: "SaveSiteConfig", - data: { - config_hjson: String, - } -} -``` -##### HTTP - -`PUT /site/config` - -### Community -#### Get Community -##### Request -```rust -{ - op: "GetCommunity", - data: { - id: Option<i32>, - name: Option<String>, - auth: Option<String> - } -} -``` -##### Response -```rust -{ - op: "GetCommunity", - data: { - community: CommunityView, - moderators: Vec<CommunityModeratorView>, - } -} -``` -##### HTTP - -`GET /community` - -#### Create Community -##### Request -```rust -{ - op: "CreateCommunity", - data: { - name: String, - title: String, - description: Option<String>, - icon: Option<String>, - banner: Option<String>, - category_id: i32, - nsfw: bool, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "CreateCommunity", - data: { - community: CommunityView - } -} -``` -##### HTTP - -`POST /community` - -#### List Communities -##### Request -```rust -{ - op: "ListCommunities", - data: { - sort: String, - page: Option<i64>, - limit: Option<i64>, - auth: Option<String> - } -} -``` -##### Response -```rust -{ - op: "ListCommunities", - data: { - communities: Vec<CommunityView> - } -} -``` -##### HTTP - -`GET /community/list` - -#### Ban from Community -##### Request -```rust -{ - op: "BanFromCommunity", - data: { - community_id: i32, - user_id: i32, - ban: bool, - remove_data: Option<bool>, // Removes/Restores their comments and posts for that community - reason: Option<String>, - expires: Option<i64>, - auth: String - } -} -``` -##### Response -```rust -{ - op: "BanFromCommunity", - data: { - user: UserView, - banned: bool, - } -} -``` -##### HTTP - -`POST /community/ban_user` - -#### Add Mod to Community -##### Request -```rust -{ - op: "AddModToCommunity", - data: { - community_id: i32, - user_id: i32, - added: bool, - auth: String - } -} -``` -##### Response -```rust -{ - op: "AddModToCommunity", - data: { - moderators: Vec<CommunityModeratorView>, - } -} -``` -##### HTTP - -`POST /community/mod` - -#### Edit Community -Only mods can edit a community. - -##### Request -```rust -{ - op: "EditCommunity", - data: { - edit_id: i32, - title: String, - description: Option<String>, - icon: Option<String>, - banner: Option<String>, - category_id: i32, - auth: String - } -} -``` -##### Response -```rust -{ - op: "EditCommunity", - data: { - community: CommunityView - } -} -``` -##### HTTP - -`PUT /community` - -#### Delete Community -Only a creator can delete a community - -##### Request -```rust -{ - op: "DeleteCommunity", - data: { - edit_id: i32, - deleted: bool, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "DeleteCommunity", - data: { - community: CommunityView - } -} -``` -##### HTTP - -`POST /community/delete` - -#### Remove Community -Only admins can remove a community. - -##### Request -```rust -{ - op: "RemoveCommunity", - data: { - edit_id: i32, - removed: bool, - reason: Option<String>, - expires: Option<i64>, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "RemoveCommunity", - data: { - community: CommunityView - } -} -``` -##### HTTP - -`POST /community/remove` - -#### Follow Community -##### Request -```rust -{ - op: "FollowCommunity", - data: { - community_id: i32, - follow: bool, - auth: String - } -} -``` -##### Response -```rust -{ - op: "FollowCommunity", - data: { - community: CommunityView - } -} -``` -##### HTTP - -`POST /community/follow` - -#### Get Followed Communities -##### Request -```rust -{ - op: "GetFollowedCommunities", - data: { - auth: String - } -} -``` -##### Response -```rust -{ - op: "GetFollowedCommunities", - data: { - communities: Vec<CommunityFollowerView> - } -} -``` -##### HTTP - -`GET /user/followed_communities` - -#### Transfer Community -##### Request -```rust -{ - op: "TransferCommunity", - data: { - community_id: i32, - user_id: i32, - auth: String - } -} -``` -##### Response -```rust -{ - op: "TransferCommunity", - data: { - community: CommunityView, - moderators: Vec<CommunityModeratorView>, - admins: Vec<UserView>, - } -} -``` -##### HTTP - -`POST /community/transfer` - -#### Community Join - -The main / frontpage community is `community_id: 0`. - -##### Request -```rust -{ - op: "CommunityJoin", - data: { - community_id: i32 - } -} -``` -##### Response -```rust -{ - op: "CommunityJoin", - data: { - joined: bool, - } -} -``` -##### HTTP - -`POST /community/join` - -#### Mod Join -##### Request -```rust -{ - op: "ModJoin", - data: { - community_id: i32 - } -} -``` -##### Response -```rust -{ - op: "ModJoin", - data: { - joined: bool, - } -} -``` -##### HTTP - -`POST /community/mod/join` - -### Post -#### Create Post -##### Request -```rust -{ - op: "CreatePost", - data: { - name: String, - url: Option<String>, - body: Option<String>, - nsfw: bool, - community_id: i32, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "CreatePost", - data: { - post: PostView - } -} -``` -##### HTTP - -`POST /post` - -#### Get Post -##### Request -```rust -{ - op: "GetPost", - data: { - id: i32, - auth: Option<String> - } -} -``` -##### Response -```rust -{ - op: "GetPost", - data: { - post: PostView, - comments: Vec<CommentView>, - community: CommunityView, - moderators: Vec<CommunityModeratorView>, - } -} -``` -##### HTTP - -`GET /post` - -#### Get Posts - -Post listing types are `All, Subscribed, Community` - -`community_name` can only be used for local communities. To get posts for a federated community, pass `community_id` instead. - -##### Request -```rust -{ - op: "GetPosts", - data: { - type_: String, - sort: String, - page: Option<i64>, - limit: Option<i64>, - community_id: Option<i32>, - community_name: Option<String>, - auth: Option<String> - } -} -``` -##### Response -```rust -{ - op: "GetPosts", - data: { - posts: Vec<PostView>, - } -} -``` -##### HTTP - -`GET /post/list` - -#### Create Post Like - -`score` can be 0, -1, or 1 - -##### Request -```rust -{ - op: "CreatePostLike", - data: { - post_id: i32, - score: i16, - auth: String - } -} -``` -##### Response -```rust -{ - op: "CreatePostLike", - data: { - post: PostView - } -} -``` -##### HTTP - -`POST /post/like` - -#### Edit Post -##### Request -```rust -{ - op: "EditPost", - data: { - edit_id: i32, - name: String, - url: Option<String>, - body: Option<String>, - nsfw: bool, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "EditPost", - data: { - post: PostView - } -} -``` - -##### HTTP - -`PUT /post` - -#### Delete Post -##### Request -```rust -{ - op: "DeletePost", - data: { - edit_id: i32, - deleted: bool, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "DeletePost", - data: { - post: PostView - } -} -``` - -##### HTTP - -`POST /post/delete` - -#### Remove Post - -Only admins and mods can remove a post. - -##### Request -```rust -{ - op: "RemovePost", - data: { - edit_id: i32, - removed: bool, - reason: Option<String>, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "RemovePost", - data: { - post: PostView - } -} -``` - -##### HTTP - -`POST /post/remove` - -#### Lock Post - -Only admins and mods can lock a post. - -##### Request -```rust -{ - op: "LockPost", - data: { - edit_id: i32, - locked: bool, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "LockPost", - data: { - post: PostView - } -} -``` - -##### HTTP - -`POST /post/lock` - -#### Sticky Post - -Only admins and mods can sticky a post. - -##### Request -```rust -{ - op: "StickyPost", - data: { - edit_id: i32, - stickied: bool, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "StickyPost", - data: { - post: PostView - } -} -``` - -##### HTTP - -`POST /post/sticky` - -#### Save Post -##### Request -```rust -{ - op: "SavePost", - data: { - post_id: i32, - save: bool, - auth: String - } -} -``` -##### Response -```rust -{ - op: "SavePost", - data: { - post: PostView - } -} -``` -##### HTTP - -`POST /post/save` - -#### Post Join -##### Request -```rust -{ - op: "PostJoin", - data: { - post_id: i32 - } -} -``` -##### Response -```rust -{ - op: "PostJoin", - data: { - joined: bool, - } -} -``` -##### HTTP - -`POST /post/join` - -#### Create Post Report -##### Request -```rust -{ - op: "CreatePostReport", - data: { - post_id: i32, - reason: String, - auth: String - } -} -``` -##### Response -```rust -{ - op: "CreatePostReport", - data: { - success: bool - } -} -``` -##### HTTP - -`POST /post/report` - -#### Resolve Post Report -##### Request -```rust -{ - op: "ResolvePostReport", - data: { - report_id: i32, - resolved: bool, - auth: String - } -} -``` -##### Response -```rust -{ - op: "ResolvePostReport", - data: { - report_id: i32, - resolved: bool - } -} -``` -##### HTTP - -`PUT /post/report/resolve` - -#### List Post Reports - -If a community is supplied, returns reports for only that community, otherwise returns the reports for all communities the user moderates - -##### Request -```rust -{ - op: "ListPostReports", - data: { - page: Option<i64>, - limit: Option<i64>, - community: Option<i32>, - auth: String - } -} -``` -##### Response -```rust -{ - op: "ListPostReports", - data: { - posts: Vec<PostReportView> - } -} -``` -##### HTTP - -`GET /post/report/list` - -### Comment -#### Create Comment -##### Request -```rust -{ - op: "CreateComment", - data: { - content: String, - parent_id: Option<i32>, - post_id: i32, - form_id: Option<String>, // An optional form id, so you know which message came back - auth: String - } -} -``` -##### Response -```rust -{ - op: "CreateComment", - data: { - comment: CommentView - } -} -``` - -##### HTTP - -`POST /comment` - -#### Edit Comment - -Only the creator can edit the comment. - -##### Request -```rust -{ - op: "EditComment", - data: { - content: String, - edit_id: i32, - form_id: Option<String>, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "EditComment", - data: { - comment: CommentView - } -} -``` -##### HTTP - -`PUT /comment` - -#### Delete Comment - -Only the creator can delete the comment. - -##### Request -```rust -{ - op: "DeleteComment", - data: { - edit_id: i32, - deleted: bool, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "DeleteComment", - data: { - comment: CommentView - } -} -``` -##### HTTP - -`POST /comment/delete` - - -#### Remove Comment - -Only a mod or admin can remove the comment. - -##### Request -```rust -{ - op: "RemoveComment", - data: { - edit_id: i32, - removed: bool, - reason: Option<String>, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "RemoveComment", - data: { - comment: CommentView - } -} -``` -##### HTTP - -`POST /comment/remove` - -#### Get Comments - -Comment listing types are `All, Subscribed, Community` - -`community_name` can only be used for local communities. To get posts for a federated community, pass `community_id` instead. - -##### Request -```rust -{ - op: "GetComments", - data: { - type_: String, - sort: String, - page: Option<i64>, - limit: Option<i64>, - community_id: Option<i32>, - community_name: Option<String>, - auth: Option<String> - } -} -``` -##### Response -```rust -{ - op: "GetComments", - data: { - comments: Vec<CommentView>, - } -} -``` -##### HTTP - -`GET /comment/list` - -#### Mark Comment as Read - -Only the recipient can do this. - -##### Request -```rust -{ - op: "MarkCommentAsRead", - data: { - edit_id: i32, - read: bool, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "MarkCommentAsRead", - data: { - comment: CommentView - } -} -``` -##### HTTP - -`POST /comment/mark_as_read` - -#### Save Comment -##### Request -```rust -{ - op: "SaveComment", - data: { - comment_id: i32, - save: bool, - auth: String - } -} -``` -##### Response -```rust -{ - op: "SaveComment", - data: { - comment: CommentView - } -} -``` -##### HTTP - -`PUT /comment/save` - -#### Create Comment Like - -`score` can be 0, -1, or 1 - -##### Request -```rust -{ - op: "CreateCommentLike", - data: { - comment_id: i32, - score: i16, - auth: String - } -} -``` -##### Response -```rust -{ - op: "CreateCommentLike", - data: { - comment: CommentView - } -} -``` -##### HTTP - -`POST /comment/like` - -#### Create Comment Report -##### Request -```rust -{ - op: "CreateCommentReport", - data: { - comment_id: i32, - reason: String, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "CreateCommentReport", - data: { - success: bool, - } -} -``` -##### HTTP - -`POST /comment/report` - -#### Resolve Comment Report -##### Request -```rust -{ - op: "ResolveCommentReport", - data: { - report_id: i32, - resolved: bool, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "ResolveCommentReport", - data: { - report_id: i32, - resolved: bool, - } -} -``` -##### HTTP - -`PUT /comment/report/resolve` - -#### List Comment Reports - -If a community is supplied, returns reports for only that community, otherwise returns the reports for all communities the user moderates - -##### Request -```rust -{ - op: "ListCommentReports", - data: { - page: Option<i64>, - limit: Option<i64>, - community: Option<i32>, - auth: String, - } -} -``` -##### Response -```rust -{ - op: "ListCommentReports", - data: { - comments: Vec<CommentReportView> - } -} -``` -##### HTTP - -`GET /comment/report/list` - -### RSS / Atom feeds - -#### All - -`/feeds/all.xml?sort=Hot` - -#### Community - -`/feeds/c/community-name.xml?sort=Hot` - -#### User - -`/feeds/u/user-name.xml?sort=Hot` - -### Images - -Lemmy forwards image requests to a locally running Pictrs. - -#### Get - -*Format and thumbnail are optional.* - -`GET /pictrs/image/{filename}?format={webp, jpg, ...}&thumbnail={96}` - -#### Create - -##### Request - -Uploaded content must be valid multipart/form-data with an image array located within the images[] key. - -`POST /pictrs/image` - -##### Response - -``` -{ - "files": [ - { - "delete_token": "{token}", - "file": "{file}.jpg" - } - ], - "msg": "ok" -} -``` - -#### Delete - -`GET /pictrs/image/delete/{delete_token}/{file}` - diff --git a/docs/src/federation/administration.md b/docs/src/federation/administration.md deleted file mode 100644 index fc24216c..00000000 --- a/docs/src/federation/administration.md +++ /dev/null @@ -1,28 +0,0 @@ -# Federation Administration - -Note: ActivityPub federation is still under development. We recommend that you only enable it on test instances for now. - -To enable federation, change the setting `federation.enabled` to `true` in `lemmy.hjson`, and restart Lemmy. - -Federation does not start automatically, but needs to be triggered manually through the search. To do this you have to enter a reference to a remote object, such as: - -- `!main@lemmy.ml` (Community) -- `@nutomic@lemmy.ml` (User) -- `https://lemmy.ml/c/programming` (Community) -- `https://lemmy.ml/u/nutomic` (User) -- `https://lemmy.ml/post/123` (Post) -- `https://lemmy.ml/comment/321` (Comment) - -For an overview of how federation in Lemmy works on a technical level, check out our [Federation Overview](contributing_federation_overview.md). - -## Instance allowlist and blocklist - -The federation section of Lemmy's config has two variables `allowed_instances` and `blocked_instances`. These control which other instances Lemmy will federate with. Both settings take a comma separated list of domains, eg `lemmy.ml,example.com`. You can either change those settings via `/admin`, or directly on the server filesystem. - -It is important to note that these settings only affect sending and receiving of data between instances. If allow federation with a certain instance, and then remove it from the allowlist, this will not affect previously federated data. These communities, users, posts and comments will still be shown. They will just not be updated anymore. And even if an instance is blocked, it can still fetch and display public data from your instance. - -By default, both `allowed_instances` and `blocked_instances` values are empty, which means that Lemmy will federate with every compatible instance. We do not recommend this, because the moderation tools are not yet ready to deal with malicious instances. - -What we do recommend is putting a list of trusted instances into `allowed_instances`, and only federating with those. Note that both sides need to add each other to their `allowed_instances` to allow two-way federation. - -Alternatively you can also use blocklist based federation. In this case, add the domains of instances you do *not* want to federate with. You can only set one of `allowed_instances` and `blocked_instances`, as setting both doesn't make sense. diff --git a/docs/src/federation/federation.md b/docs/src/federation/federation.md deleted file mode 100644 index 070e7f13..00000000 --- a/docs/src/federation/federation.md +++ /dev/null @@ -1,16 +0,0 @@ -# Federation - -Lemmy uses the ActivityPub protocol (a W3C standard) to enable federation between different servers (often called instances). This is very similar to the way email works. For example, if you use gmail.com, then you can not only send mails to other gmail.com users, but also to yahoo.com, yandex.ru and so on. Email uses the SMTP protocol to achieve this, so you can think of ActivityPub as "SMTP for social media". The amount of different actions possible on social media (post, comment, like, share, etc) means that ActivityPub is much more complicated than SMTP. - -As with email, ActivityPub federation happens only between servers. So if you are registered on `enterprise.lemmy.ml`, you only connect to the API of `enterprise.lemmy.ml`, while the server takes care of sending and receiving data from other instances (eg `voyager.lemmy.ml`). The great advantage of this approach is that the average user doesn't have to do anything to use federation. In fact if you are using Lemmy, you are likely already using it. One way to confirm is by going to a community or user profile. If you are on `enterprise.lemmy.ml` and you see a user like `@nutomic@voyager.lemmy.ml`, or a community like `!main@ds9.lemmy.ml`, then those are federated, meaning they use a different instance from yours. - -One way you can take advantage of federation is by opening a different instance, like `ds9.lemmy.ml`, and browsing it. If you see an interesting community, post or user that you want to interact with, just copy its URL and paste it into the search of your own instance. Your instance will connect to the other one (assuming the allowlist/blocklist allows it), and directly display the remote content to you, so that you can follow a community or comment on a post. Here are some examples of working searches: - -- `!main@lemmy.ml` (Community) -- `@nutomic@lemmy.ml` (User) -- `https://lemmy.ml/c/programming` (Community) -- `https://lemmy.ml/u/nutomic` (User) -- `https://lemmy.ml/post/123` (Post) -- `https://lemmy.ml/comment/321` (Comment) - -You can see the list of linked instances by following the "Instances" link at the bottom of any Lemmy page. \ No newline at end of file diff --git a/docs/src/federation/lemmy_protocol.md b/docs/src/federation/lemmy_protocol.md deleted file mode 100644 index feb2324b..00000000 --- a/docs/src/federation/lemmy_protocol.md +++ /dev/null @@ -1,694 +0,0 @@ -# Lemmy Federation Protocol - -The Lemmy Protocol (or Lemmy Federation Protocol) is a strict subset of the [ActivityPub Protocol](https://www.w3.org/TR/activitypub/). Any deviation from the ActivityPub protocol is a bug in Lemmy or in this documentation (or both). - -This document is targeted at developers who are familiar with the ActivityPub and ActivityStreams protocols. It gives a detailed outline of the actors, objects and activities used by Lemmy. - -Before reading this, have a look at our [Federation Overview](contributing_federation_overview.md) to get an idea how Lemmy federation works on a high level. - -Lemmy does not yet follow the ActivityPub spec in all regards. For example, we don't set a valid context indicating our context fields. We also ignore fields like `inbox`, `outbox` or `endpoints` for remote actors, and assume that everything is Lemmy. For an overview of deviations, read [#698](https://github.com/LemmyNet/lemmy/issues/698). They will be fixed in the near future. - -Lemmy is also really inflexible when it comes to incoming activities and objects. They need to be exactly identical to the examples below. Things like having an array instead of a single value, or an object ID instead of the full object will result in an error. - -In the following tables, "mandatory" refers to whether or not Lemmy will accept an incoming activity without this field. Lemmy itself will always include all non-empty fields. - -<!-- toc --> - -- [Actors](#actors) - * [Community](#community) - * [User](#user) -- [Objects](#objects) - * [Post](#post) - * [Comment](#comment) - * [Private Message](#private-message) -- [Activities](#activities) - * [Follow](#follow) - * [Accept Follow](#accept-follow) - * [Unfollow](#unfollow) - * [Create or Update Post](#create-or-update-post) - * [Create or Update Comment](#create-or-update-comment) - * [Like Post or Comment](#like-post-or-comment) - * [Dislike Post or Comment](#dislike-post-or-comment) - * [Delete Post or Comment](#delete-post-or-comment) - * [Remove Post or Comment](#remove-post-or-comment) - * [Undo](#undo) - * [Announce](#announce) - * [Create or Update Private message](#create-or-update-private-message) - * [Delete Private Message](#delete-private-message) - * [Undo Delete Private Message](#undo-delete-private-message) - -<!-- tocstop --> - -## Actors - -### Community - -An automated actor. Users can send posts or comments to it, which the community forwards to its followers in the form of `Announce`. - -Sends activities to user: `Accept/Follow`, `Announce` - -Receives activities from user: `Follow`, `Undo/Follow`, `Create`, `Update`, `Like`, `Dislike`, `Remove` (only admin/mod), `Delete` (only creator), `Undo` (only for own actions) - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://enterprise.lemmy.ml/c/main", - "type": "Group", - "preferredUsername": "main", - "name": "The Main Community", - "category": { - "identifier": "1", - "name": "Discussion" - }, - "sensitive": false, - "attributedTo": [ - "https://enterprise.lemmy.ml/u/picard", - "https://enterprise.lemmy.ml/u/riker" - ], - "content": "Welcome to the default community!", - "source": { - "content": "Welcome to the default community!", - "mediaType": "text/markdown" - }, - "icon": { - "type": "Image", - "url": "https://enterprise.lemmy.ml/pictrs/image/Z8pFFb21cl.png" - }, - "image": { - "type": "Image", - "url": "https://enterprise.lemmy.ml/pictrs/image/Wt8zoMcCmE.jpg" - }, - "inbox": "https://enterprise.lemmy.ml/c/main/inbox", - "outbox": "https://enterprise.lemmy.ml/c/main/outbox", - "followers": "https://enterprise.lemmy.ml/c/main/followers", - "endpoints": { - "sharedInbox": "https://enterprise.lemmy.ml/inbox" - }, - "published": "2020-10-06T17:27:43.282386+00:00", - "updated": "2020-10-08T11:57:50.545821+00:00", - "publicKey": { - "id": "https://enterprise.lemmy.ml/c/main#main-key", - "owner": "https://enterprise.lemmy.ml/c/main", - "publicKeyPem": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA9JJ7Ybp/H7iXeLkWFepg\ny4PHyIXY1TO9rK3lIBmAjNnkNywyGXMgUiiVhGyN9yU7Km8aWayQsNHOkPL7wMZK\nnY2Q+CTQv49kprEdcDVPGABi6EbCSOcRFVaUjjvRHf9Olod2QP/9OtX0oIFKN2KN\nPIUjeKK5tw4EWB8N1i5HOuOjuTcl2BXSemCQLAlXerLjT8xCarGi21xHPaQvAuns\nHt8ye7fUZKPRT10kwDMapjQ9Tsd+9HeBvNa4SDjJX1ONskNh2j4bqHHs2WUymLpX\n1cgf2jmaXAsz6jD9u0wfrLPelPJog8RSuvOzDPrtwX6uyQOl5NK00RlBZwj7bMDx\nzwIDAQAB\n-----END PUBLIC KEY-----\n" - } -} -``` - -| Field Name | Mandatory | Description | -|---|---|---| -| `preferredUsername` | yes | Name of the actor | -| `name` | yes | Title of the community | -| `category` | yes | Hardcoded list of categories, see https://lemmy.ml/api/v1/categories | -| `sensitive` | yes | True indicates that all posts in the community are nsfw | -| `attributedTo` | yes | First the community creator, then all the remaining moderators | -| `content` | no | Text for the community sidebar, usually containing a description and rules | -| `icon` | no | Icon, shown next to the community name | -| `image` | no | Banner image, shown on top of the community page | -| `inbox` | no | ActivityPub inbox URL | -| `outbox` | no | ActivityPub outbox URL, only contains up to 20 latest posts, no comments, votes or other activities | -| `followers` | no | Follower collection URL, only contains the number of followers, no references to individual followers | -| `endpoints` | no | Contains URL of shared inbox | -| `published` | no | Datetime when the community was first created | -| `updated` | no | Datetime when the community was last changed | -| `publicKey` | yes | The public key used to verify signatures from this actor | - -### User - -A person, interacts primarily with the community where it sends and receives posts/comments. Can also create and moderate communities, and send private messages to other users. - -Sends activities to Community: `Follow`, `Undo/Follow`, `Create`, `Update`, `Like`, `Dislike`, `Remove` (only admin/mod), `Delete` (only creator), `Undo` (only for own actions) - -Receives activities from Community: `Accept/Follow`, `Announce` - -Sends and receives activities from/to other users: `Create/Note`, `Update/Note`, `Delete/Note`, `Undo/Delete/Note` (all those related to private messages) - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://enterprise.lemmy.ml/u/picard", - "type": "Person", - "preferredUsername": "picard", - "name": "Jean-Luc Picard", - "content": "The user bio", - "source": { - "content": "The user bio", - "mediaType": "text/markdown" - }, - "icon": { - "type": "Image", - "url": "https://enterprise.lemmy.ml/pictrs/image/DS3q0colRA.jpg" - }, - "image": { - "type": "Image", - "url": "https://enterprise.lemmy.ml/pictrs/image/XenaYI5hTn.png" - }, - "inbox": "https://enterprise.lemmy.ml/u/picard/inbox", - "endpoints": { - "sharedInbox": "https://enterprise.lemmy.ml/inbox" - }, - "published": "2020-10-06T17:27:43.234391+00:00", - "updated": "2020-10-08T11:27:17.905625+00:00", - "publicKey": { - "id": "https://enterprise.lemmy.ml/u/picard#main-key", - "owner": "https://enterprise.lemmy.ml/u/picard", - "publicKeyPem": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyH9iH83+idw/T4QpuRSY\n5YgQ/T5pJCNxvQWb6qcCu3gEVigfbreqZKJpOih4YT36wu4GjPfoIkbWJXcfcEzq\nMEQoYbPStuwnklpN2zj3lRIPfGLht9CAlENLWikTUoW5kZLyU6UQtOGdT2b1hDuK\nsUEn67In6qYx6pal8fUbO6X3O2BKzGeofnXgHCu7QNIuH4RPzkWsLhvwqEJYP0zG\nodao2j+qmhKFsI4oNOUCGkdJejO7q+9gdoNxAtNNKilIOwUFBYXeZJb+XGlzo0X+\n70jdJ/xQCPlPlItU4pD/0FwPLtuReoOpMzLi20oDsPXJBvn+/NJaxqDINuywcN5p\n4wIDAQAB\n-----END PUBLIC KEY-----\n" - } -} -``` - -| Field Name | Mandatory | Description | -|---|---|---| -| `preferredUsername` | yes | Name of the actor | -| `name` | no | The user's displayname | -| `content` | no | User bio | -| `icon` | no | The user's avatar, shown next to the username | -| `image` | no | The user's banner, shown on top of the profile | -| `inbox` | no | ActivityPub inbox URL | -| `endpoints` | no | Contains URL of shared inbox | -| `published` | no | Datetime when the user signed up | -| `updated` | no | Datetime when the user profile was last changed | -| `publicKey` | yes | The public key used to verify signatures from this actor | - -## Objects - -### Post - -A page with title, and optional URL and text content. The URL often leads to an image, in which case a thumbnail is included. Each post belongs to exactly one community. - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://voyager.lemmy.ml/post/29", - "type": "Page", - "attributedTo": "https://voyager.lemmy.ml/u/picard", - "to": "https://voyager.lemmy.ml/c/main", - "summary": "Test thumbnail 2", - "content": "blub blub", - "source": { - "content": "blub blub", - "mediaType": "text/markdown" - }, - "url": "https://voyager.lemmy.ml:/pictrs/image/fzGwCsq7BJ.jpg", - "image": { - "type": "Image", - "url": "https://voyager.lemmy.ml/pictrs/image/UejwBqrJM2.jpg" - }, - "commentsEnabled": true, - "sensitive": false, - "stickied": false, - "published": "2020-09-24T17:42:50.396237+00:00", - "updated": "2020-09-24T18:31:14.158618+00:00" -} -``` - -| Field Name | Mandatory | Description | -|---|---|---| -| `attributedTo` | yes | ID of the user which created this post | -| `to` | yes | ID of the community where it was posted to | -| `summary` | yes | Title of the post | -| `content` | no | Body of the post | -| `url` | no | An arbitrary link to be shared | -| `image` | no | Thumbnail for `url`, only present if it is an image link | -| `commentsEnabled` | yes | False indicates that the post is locked, and no comments can be added | -| `sensitive` | yes | True marks the post as NSFW, blurs the thumbnail and hides it from users with NSFW settign disabled | -| `stickied` | yes | True means that it is shown on top of the community | -| `published` | no | Datetime when the post was created | -| `updated` | no | Datetime when the post was edited (not present if it was never edited) | - -### Comment - -A reply to a post, or reply to another comment. Contains only text (including references to other users or communities). Lemmy displays comments in a tree structure. - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://enterprise.lemmy.ml/comment/95", - "type": "Note", - "attributedTo": "https://enterprise.lemmy.ml/u/picard", - "to": "https://enterprise.lemmy.ml/c/main", - "content": "mmmk", - "source": { - "content": "mmmk", - "mediaType": "text/markdown" - }, - "inReplyTo": [ - "https://enterprise.lemmy.ml/post/38", - "https://voyager.lemmy.ml/comment/73" - ], - "published": "2020-10-06T17:53:22.174836+00:00", - "updated": "2020-10-06T17:53:22.174836+00:00" -} -``` - -| Field Name | Mandatory | Description | -|---|---|---| -| `attributedTo` | yes | ID of the user who created the comment | -| `to` | yes | Community where the comment was made | -| `content` | yes | The comment text | -| `inReplyTo` | yes | IDs of the post where this comment was made, and the parent comment. If this is a top-level comment, `inReplyTo` only contains the post | -| `published` | no | Datetime when the comment was created | -| `updated` | no | Datetime when the comment was edited (not present if it was never edited) | - -### Private Message - -A direct message from one user to another. Can not include additional users. Threading is not implemented yet, so the `inReplyTo` field is missing. - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://enterprise.lemmy.ml/private_message/34", - "type": "Note", - "attributedTo": "https://enterprise.lemmy.ml/u/picard", - "to": "https://voyager.lemmy.ml/u/janeway", - "content": "test", - "source": { - "content": "test", - "mediaType": "text/markdown" - }, - "mediaType": "text/markdown", - "published": "2020-10-08T19:10:46.542820+00:00", - "updated": "2020-10-08T20:13:52.547156+00:00" -} -``` - -| Field Name | Mandatory | Description | -|---|---|---| -| `attributedTo` | ID of the user who created this private message | -| `to` | ID of the recipient | -| `content` | yes | The text of the private message | -| `published` | no | Datetime when the message was created | -| `updated` | no | Datetime when the message was edited (not present if it was never edited) | - -## Activities - -### Follow - -When the user clicks "Subscribe" in a community, a `Follow` is sent. The community automatically responds with an `Accept/Follow`. - -Sent by: User - -Sent to: Community - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://enterprise.lemmy.ml/activities/follow/2e4784b7-4edf-4fa1-a352-674d5d5f8891", - "type": "Follow", - "actor": "https://enterprise.lemmy.ml/u/picard", - "to": "https://ds9.lemmy.ml/c/main", - "object": "https://ds9.lemmy.ml/c/main" -} -``` - -| Field Name | Mandatory | Description | -|---|---|---| -| `actor` | yes | The user that is sending the follow request | -| `object` | yes | The community to be followed | - -### Accept Follow - -Automatically sent by the community in response to a `Follow`. At the same time, the community adds this user to its followers list. - -Sent by: Community - -Sent to: User - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://ds9.lemmy.ml/activities/accept/5314bf7c-dab8-4b01-baf2-9be11a6a812e", - "type": "Accept", - "actor": "https://ds9.lemmy.ml/c/main", - "to": "https://enterprise.lemmy.ml/u/picard", - "object": { - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://enterprise.lemmy.ml/activities/follow/2e4784b7-4edf-4fa1-a352-674d5d5f8891", - "type": "Follow", - "object": "https://ds9.lemmy.ml/c/main", - "actor": "https://enterprise.lemmy.ml/u/picard" - } -} -``` - -| Field Name | Mandatory | Description | -|---|---|---| -| `actor` | yes | The same community as in the `Follow` activity | -| `to` | no | ID of the user which sent the `Follow` | -| `object` | yes | The previously sent `Follow` activity | - -### Unfollow - -Clicking on the unsubscribe button in a community causes an `Undo/Follow` to be sent. The community removes the user from its follower list after receiving it. - -Sent by: User - -Sent to: Community - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "http://lemmy-alpha:8541/activities/undo/2c624a77-a003-4ed7-91cb-d502eb01b8e8", - "type": "Undo", - "actor": "http://lemmy-alpha:8541/u/lemmy_alpha", - "to": "http://lemmy-beta:8551/c/main", - "object": { - "@context": "https://www.w3.org/ns/activitystreams", - "id": "http://lemmy-alpha:8541/activities/follow/f0d732e7-b1e7-4857-a5e0-9dc83c3f7ee8", - "type": "Follow", - "actor": "http://lemmy-alpha:8541/u/lemmy_alpha", - "object": "http://lemmy-beta:8551/c/main" - } -} -``` -### Create or Update Post - -When a user creates a new post, it is sent to the respective community. Editing a previously created post sends an almost identical activity, except the `type` being `Update`. We don't support mentions in posts yet. - -Sent by: User - -Sent to: Community - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://enterprise.lemmy.ml/activities/create/6e11174f-501a-4531-ac03-818739bfd07d", - "type": "Create", - "actor": "https://enterprise.lemmy.ml/u/riker", - "to": "https://www.w3.org/ns/activitystreams#Public", - "cc": [ - "https://ds9.lemmy.ml/c/main/" - ], - "object": ... -} -``` - -| Field Name | Mandatory | Description | -|---|---|---| -| `type` | yes | either `Create` or `Update` | -| `cc` | yes | Community where the post is being made | -| `object` | yes | The post being created | - -### Create or Update Comment - -A reply to a post, or to another comment. Can contain mentions of other users. Editing a previously created post sends an almost identical activity, except the `type` being `Update`. - -Sent by: User - -Sent to: Community - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://enterprise.lemmy.ml/activities/create/6f52d685-489d-4989-a988-4faedaed1a70", - "type": "Create", - "actor": "https://enterprise.lemmy.ml/u/riker", - "to": "https://www.w3.org/ns/activitystreams#Public", - "tag": [{ - "type": "Mention", - "name": "@sisko@ds9.lemmy.ml", - "href": "https://ds9.lemmy.ml/u/sisko" - }], - "cc": [ - "https://ds9.lemmy.ml/c/main/", - "https://ds9.lemmy.ml/u/sisko" - ], - "object": ... -} -``` - -| Field Name | Mandatory | Description | -|---|---|---| -| `tag` | no | List of users which are mentioned in the comment (like `@user@example.com`) | -| `cc` | yes | Community where the post is being made, the user being replied to (creator of the parent post/comment), as well as any mentioned users | -| `object` | yes | The comment being created | - -### Like Post or Comment - -An upvote for a post or comment. - -Sent by: User - -Sent to: Community - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://enterprise.lemmy.ml/activities/like/8f3f48dd-587d-4624-af3d-59605b7abad3", - "type": "Like", - "actor": "https://enterprise.lemmy.ml/u/riker", - "to": "https://www.w3.org/ns/activitystreams#Public", - "cc": [ - "https://ds9.lemmy.ml/c/main/" - ], - "object": "https://enterprise.lemmy.ml/p/123" -} -``` - -| Field Name | Mandatory | Description | -|---|---|---| -| `cc` | yes | ID of the community where the post/comment is | -| `object` | yes | The post or comment being upvoted | - -### Dislike Post or Comment - -A downvote for a post or comment. - -Sent by: User - -Sent to: Community - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://enterprise.lemmy.ml/activities/dislike/fd2b8e1d-719d-4269-bf6b-2cadeebba849", - "type": "Dislike", - "actor": "https://enterprise.lemmy.ml/u/riker", - "to": "https://www.w3.org/ns/activitystreams#Public", - "cc": [ - "https://ds9.lemmy.ml/c/main/" - ], - "object": "https://enterprise.lemmy.ml/p/123" -} -``` - -| Field Name | Mandatory | Description | -|---|---|---| -| `cc` | yes | ID of the community where the post/comment is | -| `object` | yes | The post or comment being upvoted | - -### Delete Post or Comment - -Deletes a previously created post or comment. This can only be done by the original creator of that post/comment. - -Sent by: User - -Sent to: Community - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://enterprise.lemmy.ml/activities/delete/f1b5d57c-80f8-4e03-a615-688d552e946c", - "type": "Delete", - "actor": "https://enterprise.lemmy.ml/u/riker", - "to": "https://www.w3.org/ns/activitystreams#Public", - "cc": [ - "https://enterprise.lemmy.ml/c/main/" - ], - "object": "https://enterprise.lemmy.ml/post/32" -} -``` - -| Field Name | Mandatory | Description | -|---|---|---| -| `cc` | yes | ID of the community where the post/comment is | -| `object` | yes | ID of the post or comment being deleted | - -### Remove Post or Comment - -Removes a post or comment. This can only be done by a community mod, or by an admin on the instance where the community is hosted. - -Sent by: User - -Sent to: Community - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://ds9.lemmy.ml/activities/remove/aab93b8e-3688-4ea3-8212-d00d29519218", - "type": "Remove", - "actor": "https://ds9.lemmy.ml/u/sisko", - "to": "https://www.w3.org/ns/activitystreams#Public", - "cc": [ - "https://ds9.lemmy.ml/c/main/" - ], - "object": "https://enterprise.lemmy.ml/comment/32" -} -``` - -| Field Name | Mandatory | Description | -|---|---|---| -| `cc` | yes | ID of the community where the post/comment is | -| `object` | yes | ID of the post or comment being removed | - -### Undo - -Reverts a previous activity, can only be done by the `actor` of `object`. In case of a `Like` or `Dislike`, the vote count is changed back. In case of a `Delete` or `Remove`, the post/comment is restored. The `object` is regenerated from scratch, as such the activity ID and other fields are different. - -Sent by: User - -Sent to: Community - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://ds9.lemmy.ml/activities/undo/70ca5fb2-e280-4fd0-a593-334b7f8a5916", - "type": "Undo", - "actor": "https://ds9.lemmy.ml/u/sisko", - "to": "https://www.w3.org/ns/activitystreams#Public", - "cc": [ - "https://ds9.lemmy.ml/c/main/" - ], - "object": ... -} -``` - -| Field Name | Mandatory | Description | -|---|---|---| -| `object` | yes | Any `Like`, `Dislike`, `Delete` or `Remove` activity as described above | - -### Announce - -When the community receives a post or comment activity, it wraps that into an `Announce` and sends it to all followers. - -Sent by: Community - -Sent to: User - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://ds9.lemmy.ml/activities/announce/b98382e8-6cb1-469e-aa1f-65c5d2c31cc4", - "type": "Announce", - "actor": "https://ds9.lemmy.ml/c/main", - "to": "https://www.w3.org/ns/activitystreams#Public", - "cc": [ - "https://ds9.lemmy.ml/c/main/followers" - ], - "object": ... -} -``` - -| Field Name | Mandatory | Description | -|---|---|---| -| `object` | yes | Any `Create`, `Update`, `Like`, `Dislike`, `Delete` `Remove` or `Undo` activity as described above | - -### Remove or Delete Community - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "http://ds9.lemmy.ml/activities/remove/e4ca7688-af9d-48b7-864f-765e7f9f3591", - "type": "Remove", - "actor": "http://ds9.lemmy.ml/c/some_community", - "cc": [ - "http://ds9.lemmy.ml/c/some_community/followers" - ], - "to": "https://www.w3.org/ns/activitystreams#Public", - "object": "http://ds9.lemmy.ml/c/some_community" -} -``` - -| Field Name | Mandatory | Description | -|---|---|---| -| `type` | yes | Either `Remove` or `Delete` | - -### Restore Removed or Deleted Community - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "http://ds9.lemmy.ml/activities/like/0703668c-8b09-4a85-aa7a-f93621936901", - "type": "Undo", - "actor": "http://ds9.lemmy.ml/c/some_community", - "to": "https://www.w3.org/ns/activitystreams#Public", - "cc": [ - "http://ds9.lemmy.ml/c/testcom/followers" - ], - "object": { - "@context": "https://www.w3.org/ns/activitystreams", - "id": "http://ds9.lemmy.ml/activities/remove/1062b5e0-07e8-44fc-868c-854209935bdd", - "type": "Remove", - "actor": "http://ds9.lemmy.ml/c/some_community", - "object": "http://ds9.lemmy.ml/c/testcom", - "to": "https://www.w3.org/ns/activitystreams#Public", - "cc": [ - "http://ds9.lemmy.ml/c/testcom/followers" - ] - } -} - -``` -| Field Name | Mandatory | Description | -|---|---|---| -| `object.type` | yes | Either `Remove` or `Delete` | - -### Create or Update Private message - -Creates a new private message between two users. - -Sent by: User - -Sent to: User - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://ds9.lemmy.ml/activities/create/202daf0a-1489-45df-8d2e-c8a3173fed36", - "type": "Create", - "actor": "https://ds9.lemmy.ml/u/sisko", - "to": "https://enterprise.lemmy.ml/u/riker/inbox", - "object": ... -} -``` - -| Field Name | Mandatory | Description | -|---|---|---| -| `type` | yes | Either `Create` or `Update` | - -### Delete Private Message - -Deletes a previous private message. - -Sent by: User - -Sent to: User - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://ds9.lemmy.ml/activities/delete/2de5a5f3-bf26-4949-a7f5-bf52edfca909", - "type": "Delete", - "actor": "https://ds9.lemmy.ml/u/sisko", - "to": "https://enterprise.lemmy.ml/u/riker/inbox", - "object": "https://ds9.lemmy.ml/private_message/341" -} -``` - -### Undo Delete Private Message - -Restores a previously deleted private message. The `object` is regenerated from scratch, as such the activity ID and other fields are different. - -Sent by: User - -Sent to: User - -```json -{ - "@context": "https://www.w3.org/ns/activitystreams", - "id": "https://ds9.lemmy.ml/activities/undo/b24bc56d-5db1-41dd-be06-3f1db8757842", - "type": "Undo", - "actor": "https://ds9.lemmy.ml/u/sisko", - "to": "https://enterprise.lemmy.ml/u/riker/inbox", - "object": ... -} -``` diff --git a/docs/src/federation/overview.md b/docs/src/federation/overview.md deleted file mode 100644 index 949984b8..00000000 --- a/docs/src/federation/overview.md +++ /dev/null @@ -1,127 +0,0 @@ -# Federation Overview - - -This document is for anyone who wants to know how Lemmy federation works, without being overly technical. It is meant provide a high-level overview of ActivityPub federation in Lemmy. If you are implementing ActivityPub yourself and want to be compatible with Lemmy, read our [ActivityPub API outline](contributing_apub_api_outline.md). - -## Documentation conventions - -To keep things simple, sometimes you will see things formatted like `Create/Note` or `Delete/Event` or `Undo/Follow`. The thing before the slash is the Activity, and the thing after the slash is the Object inside the Activity, in an `object` property. So these are to be read as follows: - -* `Create/Note`: a `Create` activity containing a `Note` in the `object` field -* `Delete/Event`: a `Delete` activity containing an `Event` in the `object` field -* `Undo/Follow`: an `Undo` activity containing a `Follow` in the `object` field - -In Lemmy we use some specific terms to refer to ActivityPub items. They are essentially our specific implementations of well-known ActivityPub concepts: - -- Community: `Group` -- User: `Person` -- Post: `Page` -- Comment: `Note` - -This document has three main sections: - -* __Federation philosophy__ lays out the general model of how this is intended to federate -* __User Activities__ describes which actions that a User can take to interact -* __Community Activities__ describes what the Community does in response to certain User actions - -## Federation philosophy - -The primary Actor in Lemmy is the Community. Each community resides on a single instance, and consists of a list of Posts and a list of followers. The primary interaction is that of a User sending a Post or Comment related activity to the Community inbox, which then announces it to all its followers. - -Each Community has a specific creator User, who is responsible for setting rules, appointing moderators, and removing content that violates the rules. - -Besides moderation on the community level, each instance has a set of administrator Users, who have the power to do site-wide removals and bans. - -Users follow Communities that they are interested in, in order to receive Posts and Comments. They also vote on Posts and Comments, as well as creating new ones. Comments are organised in a tree structure and commonly sorted by number of votes. Direct messages between Users are also supported. - -Users can not follow each other, and neither can Communities follow anything. - -Our federation implementation is already feature complete, but so far we haven't focused at all on complying with the ActivityPub spec. As such, Lemmy is likely not compatible with implementations which expect to send and receive valid activities. This is something we plan to fix in the near future. Check out [#698](https://github.com/LemmyNet/lemmy/issues/698) for an overview of our deviations. - -## User Activities - -### Follow a Community - -Each Community page has a "Follow" button. Clicking this triggers a `Follow` activity to be sent from the user to the Community inbox. The Community will automatically respond with an `Accept/Follow` activity to the user inbox. It will also add the user to its list of followers, and deliver any activities about Posts/Comments in the Community to the user. - -### Unfollow a Community - -After following a Community, the "Follow" button is replaced by "Unfollow". Clicking this sends an `Undo/Follow` activity to the Community inbox. The Community removes the User from its followers list and doesn't send any activities to it anymore. - -### Create a Post - -When a user creates a new Post in a given Community, it is sent as `Create/Page` to the Community -inbox. - -### Create a Comment - -When a new Comment is created for a Post, both the Post ID and the parent Comment ID (if it exists) -are written to the `in_reply_to` field. This allows assigning it to the correct Post, and building -the Comment tree. It is then sent to the Community inbox as `Create/Note` - -The origin instance also scans the Comment for any User mentions, and sends the `Create/Note` to -those Users as well. - -### Edit a Post - -Changes the content of an existing Post. Can only be done by the creating User. - -### Edit a Comment - -Changes the content of an existing Comment. Can only be done by the creating User. - -### Likes and Dislikes - -Users can like or dislike any Post or Comment. These are sent as `Like/Page`, `Dislike/Note` etc to the Community inbox. - -### Deletions - -The creator of a Post, Comment or Community can delete it. It is then sent to the Community followers. The item is then hidden from all users. - -### Removals - -Mods can remove Posts and Comments from their Communities. Admins can remove any Posts or Comments on the entire site. Communities can also be removed by admins. The item is then hidden from all users. - -Removals are sent to all followers of the Community, so that they also take effect there. The exception is if an admin removes an item from a Community which is hosted on a different instance. In this case, the removal only takes effect locally. - -### Revert a previous Action - -We don't delete anything from our database, just hide it from users. Deleted or removed Communities/Posts/Comments have a "restore" button. This button generates an `Undo` activity which sets the original delete/remove activity as object, such as `Undo/Remove/Post` or `Undo/Delete/Community`. - -Clicking on the upvote button of an already upvoted post/comment (or the downvote button of an already downvoted post/comment) also generates an `Undo`. In this case and `Undo/Like/Post` or `Undo/Dislike/Comment`. - -### Create private message - -User profiles have a "Send Message" button, which opens a dialog permitting to send a private message to this user. It is sent as a `Create/Note` to the user inbox. Private messages can only be directed at a single User. - -### Edit private message - -`Update/Note` changes the text of a previously sent message - -### Delete private message - -`Delete/Note` deletes a private message. - -### Restore private message - -`Undo/Delete/Note` reverts the deletion of a private message. - -## Community Activities - -The Community is essentially a bot, which will only do anything in reaction to actions from Users. The User who first created the Community becomes the first moderator, and can add additional moderators. In general, whenever the Community receives a valid activity in its inbox, that activity is forwarded to all its followers. - -### Accept follow - -If the Community receives a `Follow` activity, it automatically responds with `Accept/Follow`. It also adds the User to its list of followers. - -### Unfollow - -Upon receiving an `Undo/Follow`, the Community removes the User from its followers list. - -### Announce - -If the Community receives any Post or Comment related activity (Create, Update, Like, Dislike, Remove, Delete, Undo), it will Announce this to its followers. For this, an Announce is created with the Community as actor, and the received activity as object. Following instances thus stay updated about any actions in Communities they follow. - -### Delete Community - -If the creator or an admin deletes the Community, it sends a `Delete/Group` to all its followers. diff --git a/docs/src/federation/resources.md b/docs/src/federation/resources.md deleted file mode 100644 index 0f14691c..00000000 --- a/docs/src/federation/resources.md +++ /dev/null @@ -1,22 +0,0 @@ -# ActivityPub Resources - -## Official Documents - -- [ActivityPub standard](https://www.w3.org/TR/activitypub/) -- [Activitypub vocabulary](https://www.w3.org/TR/activitystreams-vocabulary/) - -## Explanations - -- [ActivityPub - one protocol to rule them all?](https://schub.io/blog/2018/02/01/activitypub-one-protocol-to-rule-them-all.html) -- [A highly opinionated guide to learning about ActivityPub](https://tinysubversions.com/notes/reading-activitypub/) -- [Activitypub implementers guide](https://socialhub.activitypub.rocks/t/draft-guide-for-new-activitypub-implementers/479) -- [Mastodon Blog: How to implement a basic ActivityPub server](https://blog.joinmastodon.org/2018/06/how-to-implement-a-basic-activitypub-server/) -- [Mastodon Blog: Implementing an ActivityPub inbox](https://blog.joinmastodon.org/2018/07/how-to-make-friends-and-verify-requests/) -- [Data storage questions](https://socialhub.activitypub.rocks/t/data-storage-questions/579) -- [Activitypub as it has been understood](https://flak.tedunangst.com/post/ActivityPub-as-it-has-been-understood) - -## Examples and Libraries - -- [ActivityPub example server](https://github.com/tOkeshu/activitypub-example) -- [ActivityStreams crate](https://docs.rs/activitystreams/) -- [HTTP Signatures crate](https://git.asonix.dog/Aardwolf/http-signature-normalization) \ No newline at end of file diff --git a/docs/src/lemmy_council.md b/docs/src/lemmy_council.md deleted file mode 100644 index a495d3b7..00000000 --- a/docs/src/lemmy_council.md +++ /dev/null @@ -1,80 +0,0 @@ -# Lemmy Council - -- A group of lemmy developers and users that use a well-defined democratic process to steer the project in a positive direction, keep it aligned to community goals, and resolve conflicts. - -## 1. What gets voted on - -This section describes all the aspects of Lemmy where the council has decision making power, namely: - -- Coding direction - - Priorities / Emphasis - - Controversial features (For example, an unpopular feature should be removed) -- Moderation and conflict resolution on: - - [lemmy.ml](https://lemmy.ml/) - - [github.com/LemmyNet/lemmy](https://github.com/LemmyNet/lemmy) - - [yerbamate.ml/LemmyNet/lemmy](https://yerbamate.ml/LemmyNet/lemmy) - - [weblate.yerbamate.ml/projects/lemmy/](https://weblate.yerbamate.ml/projects/lemmy/) -- Technical administration of lemmy.ml -- Official Lemmy accounts - - [Mastodon](https://mastodon.social/@LemmyDev) - - [Liberapay](https://liberapay.com/Lemmy/) - - [Patreon](https://www.patreon.com/dessalines) -- Council membership changes -- Changes to these rules - -## 2. Feedback and Activity Reports - -Every week, the council should make a thread on Lemmy that details its activity during the past week, be it development, moderation, or anything else mentioned in 1. - -At the same time, users can give feedback and suggestions in this thread. This should be taken into account by the council. Council members can call for a vote on any controversial issues, if they can't be resolved by discussion. - -## 3. Voting Process - -Most of the time, we keep each other up to date through the Matrix chat, and take informal decisions on uncontroversial issues. For example, a user clearly violating the site rules could be banned by a single person, or ideally after discussing it with at least one other member. - -If an issue can not be resolved in this way, then any council member can call for a vote, which works in the following way: - -- Any council member can call for a vote, on any topic mentioned in 1. -- This should be used if there is any controversy in the community, or between council members. -- Before taking any decision, there needs to be a discussion where every council member can -explain their position. -- Discussion should be taken with the goal of reaching a compromise that is acceptable for -everyone. -- After the discussion, voting is done through Matrix emojis (ð: yes, ð: no, X: abstain) and must -stay open for at least two days. -- All members of the Lemmy council have equal voting power. -- Decisions should be reached unanimously, or nearly so. If this is not possible, at least -2/3 of votes must be in favour for the motion to pass. -- Once a decision is reached in this way, every member needs to abide by it. - -## 4. Joining -- We use the following process: anyone who is active around Lemmy can recommend any other active person to join the council. This has to be approved by a majority of the council. -- Active users are defined as those who contribute to Lemmy in some way for at least an hour per week on average, doing things like reporting bugs, discussing rules and features, translating, promoting, developing, or doing other things that aim to improve Lemmy as a whole. - -> people should have joined at least a month ago. -- The member list is public. -- Note: we would like to have a process where community members can elect candidates for the council, but this is not realistic because a single user could easily create multiple accounts and cheat the vote. -- Limit growth to one new member per month at most. - -## 5. Removing members -- Inactive members should be removed from the council after a few months of inactivity, and after receiving a notification about this. -- Members that dont follow binding council decisions should be removed. -- Any member can be removed in a vote. - -## 6. Goals -- We encourage the membership of groups such as LGBT, religious or ethnic minorities, abuse victims, etc etc, and strive to create a safe space for them to express their opinions. We also support measures to increase participation by the previously mentioned groups. -- The following are banned, and will always be harshly punished: fascism, abuse, racism, sexism, etc etc, - -## 7. Communication -- A private Matrix chat for all council members. -- (Once private communities are done) A private community on lemmy.ml for issues. - -## 8. Member List / Contact Info -General Contact [@LemmyDev Mastodon](https://mastodon.social/@LemmyDev) - -- [Dessalines](https://lemmy.ml/u/dessalines) -- [Nutomic](https://lemmy.ml/u/nutomic) -- [AgreeableLandscape](https://lemmy.ml/u/AgreeableLandscape) -- [fruechtchen](https://lemmy.ml/u/fruechtchen) -- [kixiQu](https://lemmy.ml/u/kixiQu) -- [Karanja](https://baraza.africa/u/mwalimu) -- [zedi](https://lemmy.161.social/u/zedi) -- 2.44.1