mirror of https://gitlab.com/litecord/litecord.git
if the everyone role can read the channel, then the member list will be equivalent to any other list where the everyone role can read the channel. with this in mind we can generate a "global" member list directed only for that usecase. - permissions: add role_permissions |
||
|---|---|---|
| litecord | ||
| manage | ||
| utils | ||
| .gitignore | ||
| LICENSE | ||
| Pipfile | ||
| Pipfile.lock | ||
| README.md | ||
| config.example.py | ||
| manage.py | ||
| nginx.conf | ||
| run.py | ||
| schema.sql | ||
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.
Notes
- There are no testing being run on the current codebase. Which means the code is definitely unstable.
- No voice is planned to be developed, for now.
- You must figure out connecting to the server yourself. Litecord will not distribute Discord's official client code nor provide ways to modify the client.
Install
Requirements:
- Python 3.6 or higher
- PostgreSQL
- Pipenv
$ git clone https://gitlab.com/luna/litecord.git && cd litecord
# Setup the database:
# don't forget that you can create a specific
# postgres user just for the litecord database
$ createdb litecord
$ psql -f schema.sql litecord
# Configure litecord:
# edit config.py as you wish
$ cp config.example.py config.py
# run database migrations (this is a
# required step in setup)
$ pipenv run ./manage.py migrate
# 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
Updating
$ git pull
$ pipenv run ./manage.py migrate