72 lines
3.1 KiB
Markdown
72 lines
3.1 KiB
Markdown
<picture>
|
|
<source media="(prefers-color-scheme: dark)" srcset="website/static/logo-dark.svg">
|
|
<img alt="Logo of gpx.studio." src="website/static/logo.svg">
|
|
</picture>
|
|
|
|
* [**gpx.studio**](https://gpx.studio) est un outil en ligne pour créer et éditer des fichiers GPX.
|
|
* <https://github.com/gpxstudio>
|
|
|
|

|
|
|
|
Ce dépôt contient le code source du site.
|
|
|
|
## Traduction
|
|
|
|
Le site Web est traduit par des bénévoles sur une plateforme de traduction collaborative.
|
|
Vous pouvez aider à compléter et à améliorer les traductions en rejoignant le projet [Crowdin](https://crowdin.com/project/gpxstudio).
|
|
|
|
## Développement
|
|
|
|
Le code est divisé en deux parties:
|
|
- `gpx`: une bibliothèque de caractères pour analyser et manipuler les fichiers GPX,
|
|
- `site web`: le site lui-même, qui est une application [SvelteKit](https://kit.svelte.dev/).
|
|
|
|
Vous aurez besoin de [Node.js](https://nodejs.org/) pour construire et exécuter ces deux parties.
|
|
|
|
### Construction de la bibliothèque `gpx`
|
|
|
|
```bash
|
|
cd gpx
|
|
npm install
|
|
npm run build
|
|
```
|
|
|
|
### Fonctionnement du site
|
|
|
|
Pour pouvoir charger la carte, vous devrez créer votre propre <a href="https://account.mapbox.com/auth/signup" target="_blank">Jeton d'accès Mapbox</a> et le stocker dans un fichier `.env` dans le répertoire `site web`.
|
|
|
|
```bash
|
|
cd website
|
|
echo PUBLIC_MAPBOX_TOKEN={YOUR_MAPBOX_TOKEN} >> .env
|
|
npm install
|
|
npm run dev
|
|
```
|
|
|
|
## Crédits
|
|
|
|
Ce projet a été rendu possible grâce aux projets open source suivants:
|
|
|
|
- Développement:
|
|
- [Svelte](https://github.com/sveltejs/svelte) and [SvelteKit](https://github.com/sveltejs/kit) — expérience de développement sans faille
|
|
- [MDsveX](https://github.com/pngwn/MDsveX) — permettant une documentation basée sur Markdown
|
|
- [svelte-i18n](https://github.com/kaisermann/svelte-i18n) — localisation facile
|
|
- Conception:
|
|
- [shadcn-svelte](https://github.com/huntabyte/shadcn-svelte) — beautiful components
|
|
- [lucide-svelte](https://github.com/lucide-icons/lucide/tree/main/packages/lucide-svelte) — belles icônes
|
|
- [tailwindcss](https://github.com/tailwindlabs/tailwindcss) — un style facile
|
|
- [Chart.js](https://github.com/chartjs/Chart.js) — beaux et rapides graphiques
|
|
- Logique:
|
|
- [immer](https://github.com/immerjs/immer) — gestion d'État complexe
|
|
- [Dexie.js](https://github.com/dexie/Dexie.js) — Emballage IndexedDB
|
|
- [fast-xml-parser](https://github.com/NaturalIntelligence/fast-xml-parser) — analyse rapide de fichier GPX
|
|
- [SortableJS](https://github.com/SortableJS/Sortable) — création d'un arborescence de fichiers triables
|
|
- Cartographie:
|
|
- [Mapbox GL JS](https://github.com/mapbox/mapbox-gl-js) — de belles cartes interactives rapides
|
|
- [brouter](https://github.com/abrensch/brouter) — moteur de routage
|
|
- [OpenStreetMap](https://www.openstreetmap.org) — données cartographiques utilisées par Mapbox et brouter
|
|
- [DocSearch](https://github.com/algolia/docsearch) — moteur de recherche de la documentation
|
|
|
|
## Licence
|
|
|
|
Ce projet est sous licence MIT - voir le fichier [LICENSE](LICENSE) pour plus de détails.
|