A Litecord compatible/inspired OSS implementation of Discord's backend for fun and profit.

Overview

epl

A Litecord compatible/inspired OSS implementation of Discord's backend for fun and profit.

Why?

Like I said, fun and profit!

In all seriousness, this project is intended as a way to understand the Discord API in a more familiar stack to help speed up implementing new features and fixing bugs for Litecord.

As such, the Epl project has the same goals as the original Litecord project.

Being Litecord compatible also means we will be using Litecord's LVSP protocol, mediaproxy, and admin API.

Status

Big ol tables of features and their implementation status.

v6

(To be filled out)

Feature Status Notes

v9

(To be filled out)

Feature Status Notes

Installation/Running

Requirements

Runtime

Required:

  • Some sort of compatible libc

Optional:

Development

Required:

Optional:

Configuration

Variable Description Example Required? Default
RUST_LOG Rust logging level (See env_logger) INFO ERROR
NAME The instance's name Epl [x] N/A
URL The instance's main URL epl.dev [x] N/A
GATEWAY_URL The URL of the Gateway (Must be accessible to clients) gateway.epl.dev [x] N/A
MEDIAPROXY_URL The URL of the Litecord mediaproxy media.epl.dev N/A
HTTP_LISTEN_ADDR Listen address of the HTTP API 0.0.0.0:3926 0.0.0.0:3926
GATEWAY_LISTEN_ADDR Listen address of the gateway socket 0.0.0.0:5001 0.0.0.0:5001
DATABASE_URL PostgreSQL database URL postgres://username:password@localhost/database [x] N/A
REDIS_ADDR Redis database URL redis://127.0.0.1:6379 redis://127.0.0.1:6379
LVSP_SECRET LVSP Shared Secret, can be anything (Must be the same on the LVSP server) supersecret [x] N/A
REQUIRE_SSL Whether or not SSL protocols will be used (wss:// https://) true false
REGISTRATION Whether or not registration is allowed true false

Contributing

Please read the contributing guide and the code of conduct.

Especially the commit message style guidelines.

You might also like...
Emerald, the EVM compatible paratime

The Emerald ParaTime This is the Emerald ParaTime, an official EVM-compatible Oasis Protocol Foundation's ParaTime for the Oasis Network built using t

Unofficial Bitwarden compatible server written in Rust, formerly known as bitwarden_rs

Alternative implementation of the Bitwarden server API written in Rust and compatible with upstream Bitwarden clients*, perfect for self-hosted deploy

OpenAI compatible API for serving LLAMA-2 model
OpenAI compatible API for serving LLAMA-2 model

Cria - Local llama OpenAI-compatible API The objective is to serve a local llama-2 model by mimicking an OpenAI API service. The llama2 model runs on

Opensource diagnostic software for Daimler vehicles, inspired by Xentry and DAS, written in Rust

OPENSTAR An opensource diagnostic application for Daimler vehicles inspired by DAS and Xentry. Some of the work here is based on OpenVehicleDiag If yo

Wally is a modern package manager for Roblox projects inspired by Cargo

Wally is a package manager for Roblox inspired by Cargo (Rust) and npm (JavaScript). It brings the familiar, community-oriented world of sharing code from other communities into the Roblox ecosystem.

Matrix bot inspired by Shirt Bot.

matrix-openai-bot Matrix bot inspired by Shirt Bot. Usage Run the bot after building it or grabbing the latest release $ matrix-openai-bot Edit the ge

Programming language from down under, inspired by this Reddit post.
Programming language from down under, inspired by this Reddit post.

aussie++ Programming language from down under, inspired by this Reddit post. View live demo here. Special thanks to MarkWhyBird, louis100, and others

Pool is a befunge inspired, two-dimensional esolang

Pool is a befunge inspired, two-dimensional esolang

Programming Language Inspired by Brainfuck
Programming Language Inspired by Brainfuck

Brainsuck Brainfuck but not really... like... a better version of it. Installation Requirements: Rust version 1.50 or higher Linux curl https://raw.gi

Owner
Evie Viau
19 y/o JS / Rust developer. she/her
Evie Viau
The language that eats the stack. Heavily inspired by porth which is inspired off of forth

Snack The language that eats the stack. Heavily inspired by porth which is inspired off of forth Install To use Snack you will need Rust and fasm Afte

Cowboy8625 2 Mar 20, 2022
unFlow is a Design as Code implementation, a DSL for UX & backend modeling. DSL to Sketch file, Sketch to DSL, DSL to code.

unflow 是一个低代码、无代码设计语言。unFlow is a Design as Code implementation, a DSL for UX & backend modeling. DSL to Sketch file, Sketch to DSL, DSL to code.

Inherd OS Team (硬核开源小组) 70 Nov 27, 2022
🚀 Fast and 100% API compatible postcss replacer, built in Rust

?? Fast and 100% API compatible postcss replacer, built in Rust

迷渡 472 Jan 7, 2023
A rust library for interacting with multiple Discord.com-compatible APIs and Gateways at the same time.

Chorus A rust library for interacting with (multiple) Spacebar-compatible APIs and Gateways (at the same time). Explore the docs » Report Bug · Reques

polyphony 4 Apr 30, 2023
Efficent platform for inference and serving local LLMs including an OpenAI compatible API server.

candle-vllm Efficient platform for inference and serving local LLMs including an OpenAI compatible API server. Features OpenAI compatible API server p

Eric Buehler 21 Nov 15, 2023
The 峨眉 (EMei) JIT/AOT backend framework.

emei The 峨眉 (EMei) JIT/AOT backend framework. Support Instructions x86_64 mov mov mov_zero_extend_bit8/16 mov_sign_extend_bit8/16/32 mov_rev movs(is m

Lyzh 14 Apr 11, 2022
A backend API starter with Rust & postgres

Rust backend starter Rust backend starter with OpenAPI spec & swagger with rocket_okapi

Ilkka Poutanen 3 Feb 1, 2022
A boilerplate++ for a minimal rust web backend

Boiler room A boilerplate++ for a minimal rust web backend Just fork/clone/download this repo and build your backend on it. Why? Both routing and erro

null 3 Nov 28, 2022
The first fully opensource Skyblock mod backend lol.

DWS The first fully opensource Skyblock mod backend lol. Running Features Rest GET /cosmetics POST /broadcast GET /metrics GET /users DELETE /users?uu

null 2 Jan 2, 2023
A library and tool for automata and formal languages, inspired by JFLAP

Sugarcubes is a library and application for automata and formal languages. It is inspired by JFLAP, and is intended to eventually to be an alternative to JFLAP.

Henry Sloan 22 Nov 2, 2022