Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OpenAI/Swagger documentation for axum's API #25

Open
wants to merge 6 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54 changes: 51 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,29 +26,77 @@ Tamagochi, mais version Mirror universe ; Le but n'est pas de le tenir en vie, m
## Features du projet
![Frame 1](https://github.com/DevGirl-Team/tamagokill/assets/15716589/24ae9fe2-0938-43f3-9917-47ddace803b7)

## Requirements

- [Docker](https://www.docker.com/) : Nécessaire pour run l'environnement complete (ou partiel) dans des containers. Cela permet d'assurer que l'environnement reste aussi similaire que possible d'une machine à l'autre.
- [Cargo](https://doc.rust-lang.org/cargo/getting-started/installation.html) : Nécessaire pour compiler l'API en Rust hors des containers. Cargo gère aussi les packages et dépendances de l'API.
- [Node.js & npm](https://nodejs.org/en) : Nécessaire pour compiler et run localement la Web UI de Tamagokill
- [nvm](https://github.com/nvm-sh/nvm) : Utile pour basculer sur les bonnes versions de node.js/npm, notamment si vous avez plusieurs projets sur votre ordi dans des versions différentes.

## Getting started

Vous pouvez compiler et executer les parties du projets localement directement sur votre ordi (Manually) ou dans les conteneurs (Docker)

### Manually
#### API
```
```sh
# Pour compiler puis lancer l'API rust

cd api
cargo run

# Une fois compilée & lancée, l'API tourne par défaut à l'url "localhost:8080".
# Vérifiez dans le fichier /api/src/main.rs pour voir les routes accessibles
```

#### Web

##### Première étape: utiliser une bonne version de node.

*Les versions éligibles écrites dans `web/package.json` dans la section `engine`.*
Le repository contient un `.nvmrc` qui permet à **nvm** de directement charger la bonne version

```sh
# Vérifier sa version de node
node -v

# Basculer vers la bonne version de node
cd web

# Si vous n'avez pas encore installé la version de node pour ce projet
nvm install

# Si vous l'avez déjà mais la version actuellement utilisée (retournée par node -v) n'est pas compatible avec ce projet
nvm use


# A noter que nvm install marche comme nvm use mais download au préalable si besoin, dans le doute, vous pouvez juste retenir nvm install.

```

##### Deuxième étape: compiler et travailler sur le projet

```sh
# Pour compiler puis lancer l'UI

cd web
npm install
npm run dev

# L'UI est par défaut à l'url "localhost:5173"
```


### Docker
#### Dev environment
```
```sh
# Build & run une application multicontainer de l'ensemble du projet en environnement de dev
docker compose -f compose.dev.yaml up --build --watch -d
```

#### Production environment
```
```sh
# Build & run une application multicontainer de l'ensemble du projet en environnement de prod
docker compose up -d
```

Expand Down
1 change: 1 addition & 0 deletions api/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/target
Loading