An open API service indexing awesome lists of open source software.

https://github.com/camarm-dev/ed-test-api

Serve an API which reproduces the EcoleDirecte behavior without and EcoleDirecte account !
https://github.com/camarm-dev/ed-test-api

Last synced: 3 days ago
JSON representation

Serve an API which reproduces the EcoleDirecte behavior without and EcoleDirecte account !

Awesome Lists containing this project

README

          




# Ecoledirecte test API
_ed-test-api is a **testing purposes** development EcoleDirecte like API._

Ce programme sert une API qui reproduit le fonctionnement de l'API d'Ecoledirecte !

## Sommaire
- [À propos](#à-propos)
- [Compatibilité](#compatibilité)
- [Roadmap](#roadmap)
- [Déployer](#déployer)
- [Contribuer](#contribuer)

## À propos

Ce projet a été créé suite au développement et à la montée des clients alternatifs Ecoledirecte pour permettre à leur développeur de tester simplement et rapidement les fonctionnalités, en assurant leur compatibilité avec Ecoledirecte...

## Compatibilité

- Compatible comptes élèves seulement pour l'instant.
- Les tokens utilisés sont différents: ce sont des tokens JWT.
- Voir [roadmap](#roadmap) pour la compatibilité des fonctionnalités.

> [!CAUTION]
> This project is under a full rewrite, so the roadmap is outdated and code is not stable !

## Roadmap

- [ ] Login
- [ ] Default login
- [ ] "Mobile" (permanent) login
- [ ] Timetable
- [ ] Textbook
- [ ] Timeline
- [ ] Grades

**Quêtes secondaires**
- [ ] Swagger
- [ ] Webadmin

## Déployer

Ce projet est déployable facilement, dans n'importe quel contexte...

### Bare metal

Lancer le serveur de test directement avec python :
- Installation des dépendances
```shell
pip install -r requirements.txt
```
- Configurez selon vos envies en modifiant [config.json](#configjson)
- Lancer le serveur
```shell
python3 main.py
```

### Docker

Déployer simplement ed-test-api avec Docker :

#### Créez votre propre image
- Construction de l'image
```shell
docker build -t . ed-test-api
```
- Configurez selon vos envies en modifiant [config.json](#configjson)
- Lancer le conteneur
```shell
docker run -d --rm -p 8000:8000 ed-test-api
```

#### Ou créez un conteneur avec une image pré-construite

> [!WARNING]
> L'image n'est pas encore déployée !

- N'oubliez pas d'inclure un `config.json` et / ou **une base de donnée** via les volumes, si vous souhaitez utiliser une configuration autre que par défaut et / ou réutiliser des données...
```shell
docker run -d --rm -p 8000:8000 [-v config.json:/web/config.json -v database.db:/web/database/database.db] ghr.io/camarm/ed-test-api
```

### config.json

```js
{
"database": "database/database.db", // Chemin jusqu'à la base de données
"secret": "ne pas laisser vide..." // Secret utilisé pour les token JWT (`openssl rand -base64 172 | tr -d '\n'`)
}

```

## Contribuer

- Reporter des bugs ou suggérer des modifications via les [issues](/issues).
- Ajouter une fonctionnalité: [`CONTRIBUTING.md`](CONTRIBUTING.md)