MicroAI Paygate
AI 요청 결제 게이트웨이로 EIP-712 서명, 영수증 발행, 클라이언트 서명 검증 지원
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Assistant de création de devis professionnels en moins de 2 minutes, pensé pour les artisans et autoentrepreneurs (espace OHADA). Devis, factures, PDF, partage WhatsApp, abonnements avec quotas et mode Express sans compte.
src/
app/ Routes (App Router)
(app)/ Écrans connectés (accueil, documents, clients, catalogue, réglages…)
api/payments/ Paiement (simulé, interface CamerPay-compatible)
connexion/ Auth email + mot de passe
inscription/ Création de compte B2B
mot-de-passe-oublie/ Récupération de mot de passe
express/ Devis express sans compte
offres/ Page des offres (publique)
components/ UI réutilisable (bouton, carte, navigation…)
features/ Modules métier (auth, company, clients, catalog, documents, payments)
hooks/ Hooks React Query par domaine
lib/ Moteur de calcul, formats, Supabase, constantes
services/ Services indépendants :
pdf/ Moteur PDF (modèles interchangeables)
payments/ PaymentProvider (simulé → CamerPay)
whatsapp.ts Liens wa.me
types/ Types BDD et domaine
supabase/migrations/ Schéma SQL, RLS, fonctions métier
Créer un projet Supabase puis exécuter les migrations dans l'ordre
(SQL Editor ou supabase db push) :
0001_initial_schema.sql → 0002_rls_policies.sql → 0003_functions.sql
Configurer l'authentification par email : Dashboard → Authentication → Providers → Email (activer). Désactiver le provider Phone si vous n'utilisez plus l'OTP SMS. Authentication → URL Configuration :
http://localhost:3000 (dev) ou votre domaine de productionhttp://localhost:3000/auth/callback, https://votre-domaine/auth/callbackVariables d'environnement : copier .env.example vers .env.local
et renseigner l'URL Supabase, la clé anon et NEXT_PUBLIC_SITE_URL.
Lancer :
npm install
npm run dev
| Commande | Rôle |
|---|---|
npm run dev | Serveur de développement |
npm run build | Build de production |
npm run lint | ESLint |
npm run typecheck | Vérification TypeScript |
npm test | Tests unitaires (calculs, TVA, conversion, quotas, numérotation) |
Les offres sont configurées en base (table plans) — jamais codées en dur :
Deux offres affichées (migration 0042_offres_simplifiees.sql) :
| Offre | Prix | Documents |
|---|---|---|
| Gratuit | 0 F | 5 par mois |
| Pro | 950 F / semaine · 2 900 F / mois · 29 000 F / an | illimités, logo |
Le document à l'unité (500 F, offre express) n'est pas une carte : il est
proposé au blocage du quota et en Express sans compte. L'offre business
est désactivée ; ses abonnés ont été basculés en Pro.
Le quota est vérifié côté base (assert_quota) à chaque création de
document ; le compteur mensuel est calculé sur les documents créés dans le
mois calendaire.
deleted_at).security definer
avec vérification de propriété).NEXT_PUBLIC_* sont
exposées).src/services/payments/ expose une interface PaymentProvider. Le MVP
utilise SimulatedPaymentProvider (variable PAYMENT_PROVIDER=simulated).
Pour brancher CamerPay : implémenter PaymentProvider dans camerpay.ts
et l'enregistrer dans getPaymentProvider() — aucun composant à modifier.
src/services/pdf/ est un moteur indépendant : il reçoit des données et
rend un HTML A4 imprimable. Le modèle classic reprend le prototype ;
d'autres modèles s'ajoutent dans templates/ + le registre TEMPLATES.
NEXT_PUBLIC_SUPABASE_URL, NEXT_PUBLIC_SUPABASE_ANON_KEY
et PAYMENT_PROVIDER=simulated dans les variables d'environnement.main = production, develop = préproduction).Fonctionnalités volontairement hors MVP (cahier des charges) :
logos déjà migré)