Rechercher

Rechercher dans Kavel...

Rapport d'arpentage

Pourquoi Kavel est construit ainsi

Chaque élément de la stack est un choix délibéré. Voici ce que fait chaque partie et pourquoi elle a mérité sa place.

Des choix, pas des options

Des choix assumés

Kavel tranche les choix difficiles à votre place. Une stack, une façon de faire, pensée pour s'effacer et vous laisser livrer.

  • Du RPC typé plutôt que REST ou GraphQL, le client et le serveur partagent un seul contrat.
  • L'état serveur via TanStack Query, pas de store global à câbler.
  • Tailwind et Base UI que vous possédez et restylisez, pas une bibliothèque de composants fourre-tout.
  • Un seul hébergeur, Cloudflare, aucune abstraction multi-cloud pour vous ralentir.
Le raisonnement complet, et ce que nous avons écarté

Les fondations

La stack

La base sur laquelle repose chaque app Kavel.

01

TanStack Start

Un framework React full-stack avec routage par fichiers et server functions. Nous l'avons choisi parce qu'il tourne nativement sur l'edge Cloudflare, qu'il est TypeScript d'abord et qu'il ne vous lie jamais à un hébergeur.

02

Hono

Un framework web minuscule et rapide, pensé pour le runtime Workers. Nous l'avons choisi parce qu'il parle Request et Response standard, n'ajoute presque aucun surcoût et démarre avec quasiment aucun cold start.

03

oRPC

RPC contract-first : déclarez chaque procédure une fois, le serveur et le client partagent les types. Nous l'avons choisi pour que l'app web appelle l'API en toute sécurité de types, sans codegen, sans dérive quand un contrat change.

04

Cloudflare Workers + D1

Votre app tourne sur Cloudflare Workers avec D1, leur base SQLite, via Drizzle ORM. Nous avons choisi Cloudflare pour sa faible latence mondiale, son offre gratuite généreuse et une seule cible de déploiement pour l'API et le web.

05

Base UI + Tailwind

Des composants accessibles sans style, habillés avec Tailwind CSS v4. Nous l'avons choisi pour que le markup et les styles vous appartiennent, sans bibliothèque de composants opaque à combattre.

06

Paraglide

Une internationalisation typée qui compile les messages en fonctions tree-shakeable. Nous avons choisi Paraglide car il n'ajoute aucun poids à l'exécution, signale les clés manquantes au build et localise les routes d'emblée.

07

Bun + Turbo + Biome

Bun installe et exécute, Turbo orchestre le monorepo, Biome analyse et formate. Nous avons choisi ce trio pour la vitesse : installs, builds et vérifications en quelques secondes, avec une seule config au lieu de cinq.

Lots en option

Les modules

Choisissez ce dont vous avez besoin au moment de la génération. Laissez le reste de côté.

Lot 01

Authentification

Connexion par e-mail et OAuth avec des sessions sécurisées par cookie et des gardes de route prêtes. C'est un module car toutes les apps n'ont pas besoin de comptes, il n'est donc là que si vous le demandez.

Lot 02

Paiements

Abonnements Stripe avec checkout typé, portail client et webhooks vérifiés. Ajoutez-le quand vous voulez facturer, et la page de tarifs lance un vrai paiement.

Lot 03

E-mail

E-mails transactionnels avec des modèles React, rendus et envoyés via Resend. Inclus pour que les réinitialisations de mot de passe et les reçus fonctionnent sans service séparé à brancher.

Lot 04

Internationalisation

Routes et messages localisés avec un sélecteur de langue, propulsés par Paraglide. Ajoutez-le pour livrer en plusieurs langues ; sans lui, aucun code i18n ne reste.

Lot 05

UI

Une bibliothèque de composants stylés sur Base UI et Tailwind, mode sombre inclus. C'est la base sur laquelle s'appuient les formulaires et les pages marketing, et elle est à vous de restyler.

Lot 06

Pages marketing

Des pages d'accueil et de tarifs prêtes à vendre, composées à partir du module UI. Utilisez-les telles quelles ou comme point de départ.

Acte de propriété

Déployez sur Cloudflare cet après-midi

Achetez Kavel une fois et possédez chaque ligne. Auth, paiements et e-mail inclus.