Installation

FitTrackee peut être installé :

  • grâce un simple paquet Python à partir de PyPI,

  • à partir des sources,

  • avec une image Docker.

Grâce aux contributeurs, des paquets sont disponibles sur Yunohost et NixOS.

Dépendances principales

Cette application est développée en Python (API) et Typescript (client) :

Le logo, les icônes de certains sports et celles des icônes météo ont été faites par Freepik sur Flaticon.
FitTrackee utilise également les icônes de Fork Awesome.
Les icônes des sports Aviron, Canoë et Kayak ont été créées par @Von-Birne.
L'icône du sport Halfbike a été créé par @astridx.

Type d'instances

Instance mono-utilisateur

Pour une instance mono-utilisateur, l'inscription peut être désactivée.
Ainsi, seuls Python et PostgreSQL/PostGIS sont nécessaires. Une interface de ligne de commande est disponible pour gérer le compte utilisateur, les exports de données et le chargement des archives de séances.

Instance multi-utilisateurs

L'inscription peut être activée et le nombre maximum de comptes peut être défini dans l'Administration.
Il est recommandé de configurer Redis et un fournisseur SMTP pour l'envoi d'e-mails et le traitement des tâches. Il est également possible d'utiliser l'interface en ligne de commande (CLI) pour gérer les comptes utilisateurs, les exports de données et le chargement des archives de séances.

Prérequis

  • obligatoires

    • installation à partir des sources ou du paquet :

      • Python 3.10+

      • PostgreSQL 14+

      • PostGIS 3.4+

      • GDAL sur le serveur hébergeant l'application, s'il est différent de celui de la base de données (GDAL est installé avec PostGIS)

    • installation avec Docker :

  • optionnels

    • (recommandé) La librairie C libmagic pour vérifier le type MIME lors du chargement de fichiers avec python-magic. Cette librairie peut ne pas être installée par défaut sur certains systèmes d'exploitation. Si elle n'est pas présente, un avertissement apparaîtra dans les logs de l'application et les fichiers seront chargés sans vérification du type MIME.

      Avertissement

      Cette librairie sera obligatoire à partir de la version 1.3.0. Remarque : les images Docker incluent déjà libmagic.

    • Redis pour la file d'attente de tâches (si l'envoi des courriels est activé et pour les demandes d'export de données et le tâches asynchrones) et les limitations d'accès à l'API (pour l'installation à partir des sources ou du paquet)

    • Fournisseur SMTP (si l'envoi des courriels est activé)

    • Clé d'API d'un fournisseur de données météo

    • Fournisseur de données d'altitude

    • Poetry 1.2+ (pour l'installation à partir des sources uniquement)

    • Node 20+ et Yarn (pour le développement uniquement)

Note

Si l'inscription des utilisateurs est activé, il est recommandé de configurer un fournisseur SMTP pour l'envoi des courriels et les demandes d'export de données.

Note

Selon le système d'exploitation et la version de Python installée, des dépendances supplémentaires peuvent être requises, telles que gcc ou libgdal-dev.

Important

Cette documentation ne détaille pas comment sécuriser un serveur. Veuillez vous reporter à la documentation et aux bonnes pratiques correspondant à votre installation et à votre système d'exploitation.