Pour le starter fullstack que je prépare voilà ce qui est en place :
⚠️Attention : zéro techno sexy dans ce tweet.
- configuration auto de Fastify
- auth avec Lucia
- bdd avec Sqlite et Prisma
- autodocumentation des routes avec Swagger
- gestion des erreurs par défaut
- vérifications des requêtes et des réponses avec un JSON qui s'assurent que ce qui entre et sort de tes routes est exactement ce que tu attends
- j'ai les templates avec Eta mais je vais de le remplacer par du JSX
Le but c'est qu'un dév qui ne connaisse pas la stack puisse facilement la prendre en main sans prise de tête.
Juste en te basant sur le dossier d'exemple pouvoir ajouter toutes les fonctions que tu veux.
En gardant l'avantage que tout est facilement accessible, bien rangé et modifiable.
Juste des trucs qui fonctionnent et qui ne demande que de connaître JavaScript.
Ce que je vais ajouter :
- HTMX Alpine pour le front
- Système de paiement webhook avec Stripe
- Compléter l'auth avec email de vérification, mot de passe oublié et d'autres Provider (Google et Github)
- Bulma par défaut pour le style
- Mais Tailwind en option
-Doc pour le déploiement (voir même juste une liste de commande à recopier)
- Copie et sauvegarde automatique de la BDD avec LiteStream
- Tools pour tester facilement l'app
- Monitoring du back end avec Prometheus et Grafana
- Système de feature flag (maison ou Unleash ?)
- CMS markdown git bdd
- Plausible en self host pour les stats
- TypeScript ?
Bref c'est un gros WIP.
Je ne suis pas pressé j'essaie juste de faire ça bien et d'apprendre un max de truc sur le chemin.
Je veux une bonne base de code que je ne suis pas obligé de mettre totalement à jour tous les 3 mois.