Documentation professionnelle et complÚte pour la plateforme ZimSend, construite avec Docusaurus et intégrant Swagger UI pour l'API Reference.
- Node.js 20+
- npm 10+
# Installer les dépendances
npm install
# Générer la documentation API depuis OpenAPI
npm run docusaurus gen-api-docs all
# Démarrer le serveur de développement
npm start
Le site de documentation sera accessible sur http://localhost:3000
# Build pour la production
npm run build
# Servir le build localement
npm run serve
documentation/
âââ docs/ # Fichiers de documentation
â âââ intro.md # Page d'introduction
â âââ guides/ # Guides utilisateur
â â âââ quick-start.md
â â âââ installation.md
â â âââ first-sms.md
â â âââ authentication.md
â â âââ webhooks.md
â âââ architecture/ # Documentation architecture
â â âââ overview.md
â â âââ data-flow.md
â â âââ queue-system.md
â â âââ mqtt-broker.md
â â âââ security.md
â âââ android/ # Configuration Android
â â âââ setup.md
â âââ sdk/ # SDKs et exemples
â â âââ overview.md
â â âââ nodejs/ # Node.js SDK
â â âââ python/ # Python SDK
â â âââ php/ # PHP SDK
â âââ webhooks/ # Documentation webhooks
â â âââ events.md
â âââ deployment/ # Guides de dĂ©ploiement
â â âââ docker.md
â âââ billing/ # Plans et tarification
â â âââ plans.md
â â âââ rate-limits.md
â âââ api/ # API Reference (gĂ©nĂ©rĂ© automatiquement)
â âââ troubleshooting.md # Guide de dĂ©pannage
â âââ faq.md # FAQ
âââ src/ # Composants React personnalisĂ©s
â âââ components/ # Composants Docusaurus
â âââ css/ # Styles personnalisĂ©s
â âââ pages/ # Pages personnalisĂ©es
âââ static/ # Assets statiques
â âââ img/ # Images et icĂŽnes
âââ openapi.yaml # SpĂ©cification OpenAPI 3.0
âââ docusaurus.config.ts # Configuration Docusaurus
âââ sidebars.ts # Configuration des sidebars
âââ package.json # DĂ©pendances npm
- 31+ fichiers de documentation en français
- Architecture détaillée avec diagrammes ASCII
- Guides pas Ă pas pour tous les cas d'usage
- Exemples de code en JavaScript, Python, PHP
- Troubleshooting complet avec solutions
- Généré automatiquement depuis
openapi.yaml
- Interface Swagger UI intégrée
- Essayer l'API directement depuis la doc
- 33+ endpoints documentés
- Schémas et modÚles complets
- Français (par défaut)
- Anglais (configuré)
- Facilement extensible pour d'autres langues
- Configuration Algolia DocSearch prĂȘte
- Recherche dans toute la documentation
- Résultats contextuels
- Mode sombre/clair avec switch automatique
- Responsive pour mobile, tablette, desktop
- Navigation intuitive avec sidebar
- Syntax highlighting pour 12+ langages
# Développement
npm start # Serveur de dev sur http://localhost:3000
npm run docusaurus gen-api-docs all # Générer l'API reference
# Production
npm run build # Build pour production
npm run serve # Servir le build localement
npm run clear # Nettoyer le cache
# Maintenance
npm run swizzle # Personnaliser les composants
npm run deploy # Déployer (configure selon plateforme)
- Créer un fichier
.md
ou.mdx
dansdocs/
- Ajouter le frontmatter:
--- sidebar_position: 1 title: Mon Titre --- # Mon Contenu
- Référencer dans
sidebars.ts
si nécessaire
- Modifier
openapi.yaml
- Regénérer la documentation API:
npm run docusaurus gen-api-docs all
- Les fichiers dans
docs/api/
seront mis Ă jour automatiquement
# Titre de niveau 1
## Titre de niveau 2
**Texte en gras**
*Texte en italique*
\```javascript
// Bloc de code avec syntax highlighting
const api = 'https://api.zimsend.com';
\```
:::tip Conseil
Utilisez des admonitions pour les notes importantes
:::
:::warning Attention
Messages d'avertissement
:::
:::danger Danger
Erreurs critiques
:::
:::info Information
Informations complémentaires
:::
La documentation supporte le multi-langues. Pour ajouter une traduction:
# Créer les fichiers de traduction
npm run write-translations -- --locale en
# Traduire dans i18n/en/
# Démarrer avec la locale
npm run start -- --locale en
Consultez le guide complet dans DEPLOYMENT.md
Déploiement rapide :
# 1. Build local
npm run build
# 2. Déployer avec le script
./deploy.sh user@votre-vps.com
# Ou manuellement avec rsync
rsync -avz --delete build/ user@votre-vps.com:/var/www/docs.zimsend.com/
Configuration Nginx :
# Sur le VPS
sudo cp nginx.conf.example /etc/nginx/sites-available/docs.zimsend.com
sudo ln -s /etc/nginx/sites-available/docs.zimsend.com /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx
# SSL avec Let's Encrypt
sudo certbot --nginx -d docs.zimsend.com
Le workflow .github/workflows/deploy.yml
déploie automatiquement à chaque push sur main
.
Configuration requise dans GitHub Secrets :
VPS_HOST
: Adresse IP ou domaine du VPSVPS_USERNAME
: Nom d'utilisateur SSHVPS_SSH_KEY
: Clé privée SSHVPS_PORT
: Port SSH (optionnel, défaut: 22)
# Configurer dans docusaurus.config.ts
organizationName: 'votre-org'
projectName: 'sms-gateway-docs'
# Déployer
GIT_USER=<votre-username> npm run deploy
# Build command
npm run build
# Publish directory
build
FROM node:20-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build
EXPOSE 3000
CMD ["npm", "run", "serve", "--", "--host", "0.0.0.0"]
docker build -t sms-gateway-docs .
docker run -p 3000:3000 sms-gateway-docs
- 31 fichiers de documentation
- 33+ endpoints API documentés
- 100+ exemples de code
- 6 langages de programmation couverts (JS, TS, Python, PHP, Ruby, Go, Java)
- 12 langages avec syntax highlighting
- 5 sections principales
- Support en Français et Anglais
Pour contribuer Ă la documentation:
- Fork le repository
- Créer une branche (
git checkout -b feature/ma-doc
) - Ăditer les fichiers dans
docs/
- Tester localement (
npm start
) - Commit (
git commit -m 'Add: documentation xyz'
) - Push (
git push origin feature/ma-doc
) - Créer une Pull Request
Cette documentation est sous licence MIT - voir LICENSE
- Email: support@zimsende.com
- Discord: Rejoindre
Construit avec â€ïž par Abed Zim