https://github.com/tonaxis/paac
Appli de suivi des menus du CROUS en React
https://github.com/tonaxis/paac
crous go golang menu nodejs pwa react typescript university vitejs
Last synced: 4 months ago
JSON representation
Appli de suivi des menus du CROUS en React
- Host: GitHub
- URL: https://github.com/tonaxis/paac
- Owner: Tonaxis
- License: apache-2.0
- Created: 2024-09-26T11:08:13.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-11-12T08:50:52.000Z (over 1 year ago)
- Last Synced: 2025-04-04T05:41:55.263Z (about 1 year ago)
- Topics: crous, go, golang, menu, nodejs, pwa, react, typescript, university, vitejs
- Language: TypeScript
- Homepage: https://paac.tonaxis.fr
- Size: 686 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Paac
Suivi des menus du CROUS par @Tonaxis.
![img/screenshot-desktop.png]
## Fonctionnalités
- **Hors connexion** / installation en mode **PWA**
- Sélection **multiple** de lieux de restauration
- Thème clair / thème sombre
- Sélection de la langue
- Français
- English
> N'hésitez pas à créer une issue pour notifier d'une erreur ou proposer une fonctionnalité !
## Comment ça marche ?
L'application est développé en [React](https://fr.react.dev) avec une api en [Go](https://go.dev). Le tout est containerisé dans une image Docker.
### API :
L'api sert de relais à l'application vers les données. Elle va requêter les sources de données puis les traiter avant de les retourner à l'application.
- `/restaurants` : retourne la liste de tout les lieux de restauration
- `/restaurants/:dataset/:id` : restourne un lieu de restauration spécifique
- `/menus/:dataset/:id?date=yyyy-mm-dd` : retourne le menu lié a un lieu de restaurantion ciblé pour une date donnée
### Sources des données :
- [Lieux de restauration](https://www.data.gouv.fr/fr/datasets/restaurants-brasseries-et-cafeterias-des-crous/)
- [Menus](https://www.data.gouv.fr/fr/datasets/menus-des-restaurants-brasseries-et-cafeterias/#/resources)
## Installation
### Docker
### Docker pull
```sh
# Get image
docker pull ghcr.io/tonaxis/paac/paac
# Run image
docker run -p 80:80 --name paac ghcr.io/tonaxis/paac/paac
```
### Docker compose
Créez un fichier `docker-compose.yml` avec ce contenu
```yml
services:
app:
image: ghcr.io/tonaxis/paac/paac
restart: always
stdin_open: true
tty: true
ports:
- "80:80"
```
Puis executer cette commande
```sh
docker compose up
```
### Git
```sh
# Clone the repository
git clone https://github.com/Tonaxis/Paac.git
# Go to the project
cd Paac
# Build image
docker build -t paac .
# Run image
docker run -p 80:80 --name paac paac
```
## Développement
### Nécessaire
- [Node.js](https://nodejs.org/fr/download/package-manager) 20.X
- [Go](https://go.dev/doc/install) 1.22.0
### Lancement
Lancement de l'api
```sh
cd paac-api
go run .
```
Lancement de l'application
```sh
cd paac-app
npm run dev
```
## Captures d'écran


