🐀 Building a federated link aggregator in rust
Go to file
2019-04-21 10:49:57 -07:00
docs Fixing ranking algorithm. 2019-04-21 10:15:40 -07:00
server Fixing ranking algorithm. 2019-04-21 10:15:40 -07:00
ui Adding a recurring inbox fetch. 2019-04-21 10:49:57 -07:00
.dockerignore Adding docker. 2019-04-05 22:29:20 -07:00
.travis.yml Travis 2019-04-06 10:49:27 -07:00
docker-compose.yml Shortening docker compose health check 2019-04-09 17:26:26 -07:00
docker_update.sh Some docker caching fixes. 2019-04-17 16:55:57 -07:00
Dockerfile Some docker caching fixes. 2019-04-17 16:55:57 -07:00
install.sh Showing how to do live update developing in the install script. 2019-04-18 09:23:19 -07:00
LICENSE Initial commit 2019-02-14 09:17:18 -08:00
README.md Fixing ranking algorithm. 2019-04-21 10:15:40 -07:00

Lemmy

Build Status star this repo fork this repo GitHub issues GitHub repo size Matrix License

A link aggregator / reddit clone for the fediverse.

Lemmy Dev instance for testing purposes only

This is a very early beta version, and a lot of features are currently broken or missing.

Features

  • Self hostable, easy to deploy.
    • Comes with docker.
  • Open source.
  • Live-updating Comment threads.
  • Clean, minimal interface.
    • Mobile-friendly.
  • Full vote scores (+/-) like old reddit.
  • Full moderation.
    • Both site admins, and community moderators.
    • Can lock, remove, and restore posts.
    • Can remove and restore comments.
  • High performance.
    • Server is written in rust.
    • Front end is ~80kB gzipped.

About

Lemmy is similar to sites like Reddit, lobste.rs, Raddle, or Hacker News. Behind the scenes, it is very different; It allows anyone to run a server (instance), and all instances are federated, and similar to Mastodon, connected to the same universe. For a link aggregator, this means a user registered on one server can subscribe to forums on any other Lemmy instance, and can have discussions with users registered on any number of instances.

Why's it called Lemmy?

Made with Rust, Actix, Inferno, Typescript and Diesel

Install

Docker

Make sure you have both docker and docker-compose installed.

git clone https://github.com/dessalines/lemmy
cd lemmy
./docker_update.sh # This pulls the newest version, builds and runs it

and goto http://localhost:8536

Local Development

Requirements

Set up Postgres DB

 psql -c "create user rrr with password 'rrr' superuser;" -U postgres
 psql -c 'create database rrr with owner rrr;' -U postgres

Running

git clone https://github.com/dessalines/lemmy
cd lemmy
./install.sh
# For live coding, where both the front and back end, automagically reload on any save, do:
# cd ui && yarn start
# cd server && cargo watch -x run

and goto http://localhost:8536

Documentation

Support

Support the development, and help cover hosting costs.

  • Patreon
  • bitcoin: bc1queu73nwuheqtsp65nyh5hf4jr533r8rr5nsj75
  • ethereum: 0x400c96c96acbC6E7B3B43B1dc1BB446540a88A01

Credits

Icons made by Freepik licensed by CC 3.0