GraphQL backend for a multimedia dictionary
Go to file
Lucien Cartier-Tilet a624636939
Implement more mutations
Implement mutations:
- create language
- delete language
- user follows a language
- user unfollows a language
- new word

Context's user_auth now contains either the user's ID or nothing if
not authentificated.
2023-01-24 01:05:18 +01:00
migrations Fix word name collision, add two new user-related features 2023-01-18 10:26:45 +01:00
src Implement more mutations 2023-01-24 01:05:18 +01:00
.drone.yml Add Drone CI 2023-01-08 17:42:56 +01:00
.editorconfig Add .editorconfig file 2023-01-03 16:24:40 +01:00
.env.example Add ADMIN_KEY variable to context 2023-01-15 22:51:22 +01:00
.gitignore Initial commit with basic DB layout 2023-01-03 15:16:10 +01:00
Cargo.toml Fragment graphql module, add Appwrite vars to context 2023-01-15 17:36:32 +01:00
diesel.toml Make Rust models for database schema 2023-01-03 16:11:43 +01:00
docker-compose.yml Initial commit with basic DB layout 2023-01-03 15:16:10 +01:00
LICENSE Add license and README 2023-01-03 16:20:31 +01:00
README.org Update README 2023-01-17 01:29:13 +01:00

Ordabok

Introduction

Ordabok is a backend for multimedia dictionaries powered by its users.

Compiling and running the project

This project requires an accessible PostgreSQL database (to store pretty much all of the project's data), an Appwrite instance (for managing user accounts), and an S3 bucket (to store images, videos, and audio). Copy .env.example with

$ cp .env.example .env

and modify the .env file accordingly. You will also need to set the variables for Appwrite and your S3 bucket.

Once this is done, execute the following command to run the backend.

$ cargo run
# or
$ cargo run --release

This makes the API available at http://localhost:8000/, with only three paths:

http://localhost:8000/
GraphiQL interface
GET http://localhost:8000/graphql?query=:query
GET queries for the GraphQL API. However, it does not work due to this issue.
POST http://localhost:8000/graphql
POST queries for the GraphQL API.

License

This project is under the AGPL 3.0 license. You can read the complete text here, and if you just want a quick understanding of it, you can go here.