Aller à l'article
Aniq-UI

KinoraConfiguration requise

Configuration requise

Ce qu'il faut installer avant de lancer votre pack, avec ou sans Docker.

Pour le pack Full Stack

Ce que contient chaque pack

PackApplications incluses dans le téléchargementFonctionne seul
Full StackAPI et tableau de bordOui, les deux ensemble
Tableau de bordTableau de bordOui, sur des données d'exemple intégrées jusqu'à ce que vous connectiez l'API du template
BackendAPIOui, en servant uniquement l'API

Un pack à une seule application n'inclut pas l'autre application. Le tableau de bord peut utiliser une API que vous faites déjà tourner, mais le code de l'API se trouve uniquement dans les packs Full Stack et Backend.

Avec Docker

  • Docker Desktop sous macOS ou Windows, ou Docker Engine avec le plugin Compose sous Linux. Le pack Full Stack démarre avec une seule commande docker compose.
  • Une connexion internet pour le premier build, qui télécharge les images de base et les dépendances.
  • Rien d'autre : Docker fournit Node.js, et la base de données est un fichier SQLite dans un volume Docker.

Avec Docker

  • Docker Desktop sous macOS ou Windows, ou Docker Engine sous Linux. Votre application a son propre Dockerfile ; Compose n'est pas nécessaire.
  • Une connexion internet pour le premier build, qui télécharge l'image de base et les dépendances.

Sans Docker

  • Node.js 22.9 ou plus récent pour le tableau de bord et le Full Stack : yarn dev et yarn start du tableau de bord utilisent l'option --env-file-if-exists de Node, arrivée avec la 22.9. L'API seule a besoin de Node.js 22 ou plus récent. Les images Docker tournent aussi sous Node.js 22.
  • Yarn 4, via Corepack. Exécutez corepack enable une fois ; chaque application fixe Yarn 4.8.1, donc yarn choisit la bonne version. Si votre Node.js n'a pas Corepack, installez-le d'abord avec npm install -g corepack.
  • Aucun package global.

Base de données

Aucun serveur de base de données. L'API utilise SQLite par défaut et yarn seed crée le fichier pour vous ; Docker utilise aussi SQLite. MySQL est pris en charge par un changement de configuration, pas de code.

Ports

Chaque application écoute sur un port local fixe. Vérifiez que rien d'autre ne les utilise, ou, avec Docker, déplacez-en un avec DASHBOARD_PORT ou API_PORT dans un .env à côté de docker-compose.yml.

ApplicationPort
API8000
Tableau de bord3030

Port

Le tableau de bord écoute sur le port 3030, ou sur PORT défini dans son .env. Vérifiez que rien d'autre ne l'utilise.

Port

L'API écoute sur le port 8000, ou sur PORT défini dans son .env. Vérifiez que rien d'autre ne l'utilise.

Une API à connecter

Rien n'est nécessaire pour essayer le tableau de bord : il fonctionne sur ses propres données d'exemple. Pour utiliser de vraies données, il lui faut l'API du template en marche, dont vous indiquez l'adresse dans son .env. L'API est vendue comme un pack à part.

Services optionnels

Aucun de ces éléments n'est nécessaire pour lancer Kinora en local. Chacun s'active avec ses clés dans back-end/.env, et une clé laissée à sa valeur de .env.example compte comme non définie.

ServiceSans lui
Cloudflare R2 ou un autre bucket compatible S3Les images de démonstration sont servies par le tableau de bord depuis son propre dossier public/assets. L'envoi d'une nouvelle photo de profil, d'une photo de progression ou d'une pièce jointe répond 400 avec « File storage is not configured on this server ».
Une clé Google Gemini, OpenAI ou DeepSeekLa page de l'assistant IA affiche « No AI model is connected ». Tous les autres écrans fonctionnent.
Votre propre MCP_API_KEYToute requête vers POST /api/mcp, la route qu'utilise un agent de code, est refusée.

Le template ne contient ni service d'envoi d'e-mails ni prestataire de paiement : aucun e-mail n'est envoyé, les pages de mot de passe oublié et de réinitialisation ne sont que des écrans (aucune réinitialisation n'est envoyée), et la carte de facturation affiche des chiffres issus du seed.

Bloqué sur une étape ?

Trouvez une solution avant de tout recommencer.

Dépannage

Préférences des Cookies

Nous utilisons des cookies pour améliorer votre expérience de navigation, analyser le trafic du site et personnaliser le contenu. En cliquant sur "Accepter Tout", vous consentez à notre utilisation des cookies pour l'analyse et la publicité personnalisée.