Go to file
Luna Mendes cd5dbc4886 Rough presence management
Lots of changes to get it working.

One day changes will be able to be small enough to be split across
commits.

 - enums: use enum.Enum, make EasyEnum subclass
 - enums: add ActivityType, ActivityFlags, StatusType
 - gateway.state: use 128 random bits instead of 256
 - gateway.state: add MAX_STORE_SIZE in PayloadStore and check it when
    adding a new payload
 - gateway.websocket: add GatewayWebsocket.update_status
 - presence: add PresenceManager.dispatch_guild_pres and
    PresenceManager.dispatch_pres
 - schema: add snowflake, activity_type, status_external types
 - schema: add GW_ACTIVITY, GW_STATUS_UPDATE
 - storage: fix _channels_extra and fixes for ChannelType as enum instead of
    class
2018-09-10 01:09:09 -03:00
litecord Rough presence management 2018-09-10 01:09:09 -03:00
.gitignore add schema.sql 2018-06-16 19:25:07 -03:00
LICENSE Initial Commit 👌 😂 2018-06-15 21:59:52 -03:00
Pipfile remove quart-cors 2018-07-21 09:37:34 -07:00
Pipfile.lock remove quart-cors 2018-07-21 09:37:34 -07:00
README.md rewrite readme 2018-09-01 18:54:28 -07:00
config.example.py config: s/WEBSERVER_URL/WEBSOCKET_URL 2018-07-21 17:19:57 -03:00
nginx.conf add sample nginx.conf 2018-07-06 03:31:12 -03:00
run.py Rough presence management 2018-09-10 01:09:09 -03:00
schema.sql schema.sql: fix syntax 2018-07-06 02:29:17 -03:00

README.md

litecord

Litecord is an open source implementation of Discord's backend and API in Python.

This project is a rewrite of litecord-reference.

Install

  • Python 3.6 or higher
  • PostgreSQL
  • Pipenv
$ git clone https://gitlab.com/lnmds/litecord.git && cd litecord

# Setup the database:
$ createdb litecord
$ psql -f schema.sql litecord

# Configure litecord:
$ cp config.example.py config.py

# Install all packages:
$ pipenv install --dev

Running

Hypercorn is used to run litecord. By default, it will bind to 0.0.0.0:5000. You can use the -b option to change it (e.g. -b 0.0.0.0:45000).

Use --access-log - to output access logs to stdout.

$ pipenv run hypercorn run:app