Outils
Interface CLI
Gérez vos projets ash-gate depuis le terminal : init, clés, génération de code.
CLI wallet
La CLI wallet est l'outil de développement de l'écosystème ash-wallet. Elle connecte votre terminal à votre compte ash-gate.
Installation
npm install -g @ash-wallet/cli
Vérifiez que l'installation a réussi :
wallet --version
# 3.0.0
Authentification
wallet auth login
# → Ouvre un navigateur pour vous connecter
# → Stocke le token dans ~/.wallet/credentials.json
wallet auth status
# Connecté en tant que : alexis@example.com
Gestion de Projets
# Lister vos projets
wallet project list
# ┌─────────────────────┬──────────────┬──────────┐
# │ Nom │ Environnement│ Statut │
# ├─────────────────────┼──────────────┼──────────┤
# │ mon-app-mobile │ sandbox │ Actif │
# │ mon-saas-prod │ live │ Actif │
# └─────────────────────┴──────────────┴──────────┘
# Créer un nouveau projet
wallet project create mon-app
# Sélectionner le projet actif
wallet project use mon-app
# Projet actif : mon-app
Configurer les Clés d'API
# Ajouter les clés sandbox et live d'un coup
wallet keys set \
--sandbox sk_sandbox_xxxxxxxxxxxxxxxx \
--live sk_live_xxxxxxxxxxxxxxxx
# Voir les clés configurées (masquées)
wallet keys list
# Sandbox : sk_sandbox_xxx***** (Configuré)
# Live : sk_live_xxx***** (Configuré)
# Récupérer votre Project Key (pour l'embarquer dans l'app)
wallet keys show --public
# pk_sandbox_xxxxxxxxxxxxxxxx
Initialiser un Projet Existant
La commande init détecte votre framework et configure tout automatiquement :
cd mon-projet-flutter
wallet init
Détection du framework...
→ Flutter détecté (pubspec.yaml trouvé)
Installation de feda_flutter...
→ flutter pub add feda_flutter
Configuration...
→ Création de wallet.yaml
→ Injection de FedaFlutter.applyCloudConfig() dans main.dart
Projet initialisé !
Project Key : pk_sandbox_xxx
Proxy URL : https://app.ashgateway.com
Génération de Code
# Générer un widget de paiement complet
wallet generate widget
# → Crée lib/widgets/payment_button.dart
# Générer un service d'abonnement
wallet generate subscription-service
# → Crée lib/services/subscription_service.dart
# Générer un guard de sécurité (middleware)
wallet generate guard
# → Crée lib/guards/subscription_guard.dart
Environnements
# Basculer en mode sandbox
wallet env use sandbox
# Environnement actif : sandbox
# Basculer en mode live (production)
wallet env use live
# Environnement actif : live
# Voir l'environnement actuel
wallet env status
Plans SaaS (Billing)
# Créer les plans par défaut (Basic / Pro / Business)
wallet billing seed
# Lister vos plans
wallet billing plans list
# Créer un plan custom
wallet billing plans create \
--name "Pack Starter" \
--amount 2500 \
--interval monthly \
--trial-days 7