Compare commits
3 Commits
7bca85261a
...
1.0.0
| Author | SHA1 | Date | |
|---|---|---|---|
| 55e7dc39f7 | |||
| 1c599c54fe | |||
| 7515380998 |
43
.github/workflows/build-windows.yml
vendored
43
.github/workflows/build-windows.yml
vendored
@ -1,43 +0,0 @@
|
||||
name: Build Windows
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- 'v*'
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
build-windows:
|
||||
runs-on: windows-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout du code
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Installer Node.js
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: '24'
|
||||
cache: 'npm'
|
||||
|
||||
- name: Installer Rust
|
||||
uses: dtolnay/rust-toolchain@stable
|
||||
|
||||
- name: Cache Rust
|
||||
uses: swatinem/rust-cache@v2
|
||||
with:
|
||||
workspaces: './src-tauri -> target'
|
||||
|
||||
- name: Installer les dépendances npm
|
||||
run: npm ci
|
||||
|
||||
- name: Build Tauri
|
||||
run: npm run tauri build
|
||||
|
||||
- name: Upload des artefacts
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: windows-build
|
||||
path: |
|
||||
src-tauri/target/release/bundle/msi/*.msi
|
||||
src-tauri/target/release/bundle/nsis/*.exe
|
||||
@ -1,9 +1,12 @@
|
||||
name: Build Linux
|
||||
name: Build & Release
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- '**' # toutes les branches
|
||||
tags:
|
||||
- 'v*'
|
||||
pull_request:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
@ -16,8 +19,6 @@ jobs:
|
||||
name: 'windows'
|
||||
- platform: 'ubuntu-22.04'
|
||||
name: 'linux'
|
||||
# - platform: 'macos-latest' # si un jour tu veux macOS
|
||||
# name: 'macos'
|
||||
|
||||
runs-on: ${{ matrix.platform }}
|
||||
|
||||
@ -51,7 +52,7 @@ jobs:
|
||||
run: npm run tauri build
|
||||
|
||||
- name: Upload Windows artifacts
|
||||
if: matrix.platform == 'windows-latest'
|
||||
if: matrix.platform == 'windows-latest' && (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/v'))
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: windows-build
|
||||
@ -60,7 +61,7 @@ jobs:
|
||||
src-tauri/target/release/bundle/nsis/*.exe
|
||||
|
||||
- name: Upload Linux artifacts
|
||||
if: matrix.platform == 'ubuntu-22.04'
|
||||
if: matrix.platform == 'ubuntu-22.04' && (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/v'))
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: linux-build
|
||||
@ -68,3 +69,16 @@ jobs:
|
||||
src-tauri/target/release/bundle/deb/*.deb
|
||||
src-tauri/target/release/bundle/rpm/*.rpm
|
||||
src-tauri/target/release/bundle/appimage/*.AppImage
|
||||
|
||||
release:
|
||||
needs: build
|
||||
if: startsWith(github.ref, 'refs/tags/v')
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
steps:
|
||||
- name: Télécharger les artefacts Windows
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: w
|
||||
133
README.md
133
README.md
@ -1,7 +1,132 @@
|
||||
# Tauri + React + Typescript
|
||||
<p align="center">
|
||||
<img src="public/logo_tougli.png" alt="TougliGui Logo" width="80"/>
|
||||
</p>
|
||||
|
||||
This template should help get you started developing with Tauri, React and Typescript in Vite.
|
||||
<h1 align="center">TougliGui</h1>
|
||||
|
||||
## Recommended IDE Setup
|
||||
<p align="center">
|
||||
Tracker de progression pour les guides Dofus [Tougli](https://docs.google.com/spreadsheets/d/1uL7svJ0E0MjhqHVLU7O4Q8v7iGwPd4bsI9qV-Pdhdds/edit?gid=0#gid=0 "lien du guide Tougli") — application desktop légère et hors-ligne
|
||||
</p>
|
||||
|
||||
- [VS Code](https://code.visualstudio.com/) + [Tauri](https://marketplace.visualstudio.com/items?itemName=tauri-apps.tauri-vscode) + [rust-analyzer](https://marketplace.visualstudio.com/items?itemName=rust-lang.rust-analyzer)
|
||||
<p align="center">
|
||||
<img src="https://img.shields.io/badge/Tauri-2.x-blue?logo=tauri" />
|
||||
<img src="https://img.shields.io/badge/React-19-61DAFB?logo=react" />
|
||||
<img src="https://img.shields.io/badge/TypeScript-5.8-3178C6?logo=typescript" />
|
||||
<img src="https://img.shields.io/badge/SQLite-local-003B57?logo=sqlite" />
|
||||
<img src="https://img.shields.io/github/license/Blomios/TougliGui" />
|
||||
</p>
|
||||
|
||||
---
|
||||
|
||||
## Aperçu
|
||||
|
||||
TougliGui est une application desktop permettant de suivre sa progression dans les guides Dofus [Tougli](https://docs.google.com/spreadsheets/d/1uL7svJ0E0MjhqHVLU7O4Q8v7iGwPd4bsI9qV-Pdhdds/edit?gid=0#gid=0 "lien du guide Tougli") (Dofus Argenté, Dofus Émeraude, Dofus Cauchemar, etc.). Les données sont synchronisées depuis Google Sheets et stockées localement dans SQLite. Chaque profil conserve sa propre progression indépendamment des autres.
|
||||
|
||||
### Page principale
|
||||
|
||||

|
||||
|
||||
La page d'accueil affiche la progression globale (quêtes complétées / total) ainsi que les guides en cours sous forme de grilles avec barre de progression individuelle.
|
||||
|
||||
### Détail d'un guide
|
||||
|
||||

|
||||
|
||||
Chaque guide affiche :
|
||||
- L'effet du Dofus
|
||||
- La légende des icônes de quêtes (Bashing, Solo, Donjons, Groupe)
|
||||
- La liste des quêtes organisées par zone, avec indication des quêtes complétées (barrées)
|
||||
- Un panneau latéral **Ressources** listant les matériaux à collecter avec quantités possédées / requises
|
||||
|
||||
### Détail d'une quête
|
||||
|
||||

|
||||
|
||||
Le détail d'une quête présente chaque étape sous forme de cases à cocher. Une fenêtre flottante **Image** peut être ouverte pour afficher les recettes ou visuels de craft directement depuis la page Dofus Pour Les Noobs, sans quitter l'application.
|
||||
|
||||
### Paramètres
|
||||
|
||||

|
||||
|
||||
La page paramètres permet de :
|
||||
- Créer et supprimer des **profils** (un profil = une progression indépendante)
|
||||
- Changer le profil actif
|
||||
- **Synchroniser** les guides depuis Google Sheets en un clic
|
||||
|
||||
---
|
||||
|
||||
## Fonctionnalités
|
||||
|
||||
- Suivi de progression par quête et par étape
|
||||
- Gestion multi-profils (plusieurs personnages)
|
||||
- Synchronisation des guides depuis Google Sheets
|
||||
- Inventaire de ressources avec saisie des quantités possédées
|
||||
- Fenêtre image intégrée pour consulter les recettes sans changer de fenêtre
|
||||
- Lien direct vers Dofus Pour Les Noobs pour chaque quête
|
||||
- Données 100 % locales (SQLite), aucun compte requis
|
||||
- Interface sombre compacte, toujours au premier plan (optionnel)
|
||||
|
||||
---
|
||||
|
||||
## Stack technique
|
||||
|
||||
| Couche | Technologie |
|
||||
|---|---|
|
||||
| Framework desktop | [Tauri v2](https://tauri.app/) (Rust) |
|
||||
| Frontend | React 19 + TypeScript + Vite |
|
||||
| Styles | Tailwind CSS v4 |
|
||||
| État global | Zustand |
|
||||
| Requêtes async | TanStack Query |
|
||||
| Base de données | SQLite via `tauri-plugin-sql` + `rusqlite` |
|
||||
| Navigation | React Router v7 |
|
||||
|
||||
---
|
||||
|
||||
## Installation
|
||||
|
||||
### Prérequis
|
||||
|
||||
- [Node.js](https://nodejs.org/) ≥ 18
|
||||
- [Rust](https://rustup.rs/) (stable)
|
||||
- Dépendances système Linux : `libwebkit2gtk-4.1`, `libgtk-3`, `libayatana-appindicator3`
|
||||
|
||||
```bash
|
||||
# Ubuntu / Debian
|
||||
sudo apt install libwebkit2gtk-4.1-dev libgtk-3-dev libayatana-appindicator3-dev
|
||||
```
|
||||
|
||||
### Lancement en développement
|
||||
|
||||
```bash
|
||||
npm install
|
||||
npm run tauri dev
|
||||
```
|
||||
|
||||
### Build de production
|
||||
|
||||
```bash
|
||||
npm run tauri build
|
||||
```
|
||||
|
||||
Les binaires sont générés dans `src-tauri/target/release/bundle/`.
|
||||
|
||||
---
|
||||
|
||||
## Téléchargement
|
||||
|
||||
Les binaires compilés (Linux `.AppImage` / Windows `.exe`) sont disponibles dans les [Releases GitHub](../../releases).
|
||||
|
||||
---
|
||||
|
||||
## Premiers pas
|
||||
|
||||
1. Lancer l'application — une base de données locale est créée automatiquement.
|
||||
2. Aller dans **Paramètres** (icône engrenage) → créer un profil.
|
||||
3. Cliquer sur **Synchroniser maintenant** pour télécharger les guides depuis Google Sheets.
|
||||
4. Retourner sur la page principale et ouvrir un guide pour commencer à cocher les quêtes.
|
||||
|
||||
---
|
||||
|
||||
## Licence
|
||||
|
||||
MIT — voir [LICENSE](LICENSE).
|
||||
|
||||
61
release.sh
61
release.sh
@ -1,61 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
VERSION="${1:-}"
|
||||
|
||||
if [[ -z "$VERSION" ]]; then
|
||||
CURRENT=$(python3 -c "import json; print(json.load(open('src-tauri/tauri.conf.json'))['version'])")
|
||||
echo "Version actuelle : $CURRENT"
|
||||
read -rp "Nouvelle version (ex: 1.0.0) : " VERSION
|
||||
fi
|
||||
|
||||
# Retire un éventuel 'v' préfixé
|
||||
VERSION="${VERSION#v}"
|
||||
|
||||
if ! [[ "$VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
|
||||
echo "Erreur : version invalide '$VERSION' (format attendu : X.Y.Z)"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "→ Mise à jour de la version vers $VERSION"
|
||||
|
||||
# Mise à jour tauri.conf.json
|
||||
python3 - "$VERSION" << 'EOF'
|
||||
import json, sys
|
||||
v = sys.argv[1]
|
||||
path = "src-tauri/tauri.conf.json"
|
||||
with open(path) as f:
|
||||
data = json.load(f)
|
||||
data["version"] = v
|
||||
with open(path, "w") as f:
|
||||
json.dump(data, f, indent=2, ensure_ascii=False)
|
||||
f.write("\n")
|
||||
EOF
|
||||
|
||||
# Mise à jour package.json
|
||||
python3 - "$VERSION" << 'EOF'
|
||||
import json, sys
|
||||
v = sys.argv[1]
|
||||
path = "package.json"
|
||||
with open(path) as f:
|
||||
data = json.load(f)
|
||||
data["version"] = v
|
||||
with open(path, "w") as f:
|
||||
json.dump(data, f, indent=2, ensure_ascii=False)
|
||||
f.write("\n")
|
||||
EOF
|
||||
|
||||
echo "→ Commit de version"
|
||||
git add src-tauri/tauri.conf.json package.json
|
||||
git commit -m "chore: bump version to $VERSION"
|
||||
|
||||
echo "→ Création du tag v$VERSION"
|
||||
git tag "v$VERSION"
|
||||
|
||||
echo "→ Push vers Gitea"
|
||||
git push origin main
|
||||
git push origin "v$VERSION"
|
||||
|
||||
echo ""
|
||||
echo "✓ Tag v$VERSION poussé — le workflow Gitea Actions va builder et créer la release automatiquement."
|
||||
echo " Suivi : https://gitea.anthonybouteiller.ovh/blomios/TougliGui/actions"
|
||||
BIN
screenshots/accueil.png
Normal file
BIN
screenshots/accueil.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 65 KiB |
BIN
screenshots/guide-argenté.png
Normal file
BIN
screenshots/guide-argenté.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 88 KiB |
BIN
screenshots/quete-detail.png
Normal file
BIN
screenshots/quete-detail.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 146 KiB |
BIN
screenshots/settings.png
Normal file
BIN
screenshots/settings.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 27 KiB |
Reference in New Issue
Block a user