Documentation Index
Fetch the complete documentation index at: https://docs.grigori.in/llms.txt
Use this file to discover all available pages before exploring further.
Documentation Deployment Guide
This guide covers how to deploy the Document Converter API documentation using Mintlify.
Quick Deployment (Recommended)
1. Mintlify Cloud
The easiest way to deploy is using Mintlify’s cloud platform
Connect GitHub
Connect your GitHub repository
Configure settings
- Repository:
your-username/doc-converter
- Docs path:
/docs
- Branch:
main
Deploy
Deploy automatically on push
2. Local Testing
Before deploying, test locally:
Manual Deployment Options
Vercel
Netlify
GitHub Pages
-
Install Vercel CLI:
-
Deploy from docs directory:
-
Configure
vercel.json:
{
"name": "doc-converter-docs",
"version": 2,
"builds": [
{
"src": "mint.json",
"use": "@mintlify/cli",
"config": {
"installCommand": "npm install",
"buildCommand": "mintlify build"
}
}
]
}
-
Create
netlify.toml:
[build]
command = "npm run build"
publish = "_site"
[build.environment]
NODE_VERSION = "18"
-
Deploy via Netlify CLI:
npm install -g netlify-cli
netlify deploy --prod
- Create workflow
.github/workflows/docs.yml:
name: Deploy Documentation
on:
push:
branches: [ main ]
paths: [ 'docs/**' ]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: '18'
- name: Install dependencies
run: |
cd docs
npm install
- name: Build documentation
run: |
cd docs
npm run build
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./docs/_site
Custom Domain Setup
Mintlify Cloud
Self-Hosted
Access Dashboard
Go to your Mintlify dashboard
Navigate to Settings
Navigate to Settings → Custom Domain
Add Domain
Add your domain (e.g., docs.yourdomain.com)
Update DNS
Update DNS records:Type: CNAME
Name: docs
Value: your-site.mintlify.app
-
Configure DNS:
Type: A
Name: docs
Value: your-server-ip
-
Set up reverse proxy (Nginx):
server {
listen 80;
server_name docs.yourdomain.com;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
Environment Variables
For production deployments, set these environment variables:
# Production environment
NODE_ENV=production
# Custom domain (if applicable)
CUSTOM_DOMAIN=docs.yourdomain.com
# Analytics (optional)
GOOGLE_ANALYTICS_ID=G-XXXXXXXXXX
Monitoring
Health Check
Add a health check endpoint to monitor your documentation:
// scripts/health-check.js
const https = require('https');
function checkHealth() {
const options = {
hostname: 'docs.yourdomain.com',
port: 443,
path: '/',
method: 'GET'
};
const req = https.request(options, (res) => {
console.log(`Status: ${res.statusCode}`);
console.log(`Headers: ${JSON.stringify(res.headers)}`);
});
req.on('error', (e) => {
console.error(`Health check failed: ${e.message}`);
});
req.end();
}
checkHealth();
Uptime Monitoring
UptimeRobot
Free uptime monitoring
Pingdom
Comprehensive monitoring
StatusCake
Simple uptime checks
1. Build Optimization
{
"scripts": {
"build": "mintlify build --optimize",
"build:prod": "NODE_ENV=production mintlify build --optimize --minify"
}
}
2. CDN Setup
Use a CDN for better performance:
// mintlify.config.js
module.exports = {
cdn: {
enabled: true,
domain: 'cdn.yourdomain.com'
}
};
Configure caching in your web server:
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
expires 1y;
add_header Cache-Control "public, immutable";
}
location ~* \.(html|json)$ {
expires 1h;
add_header Cache-Control "public, must-revalidate";
}
Security
HTTPS Setup
certbot --nginx -d docs.yourdomain.com
- Add domain to Cloudflare
- Set SSL/TLS to “Full (strict)”
- Enable “Always Use HTTPS”
Content Security Policy
Add CSP headers for security:
add_header Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; font-src 'self' data:";
Backup Strategy
# Automated backup script
#!/bin/bash
DATE=$(date +%Y%m%d_%H%M%S)
git clone https://github.com/your-username/doc-converter.git backup_$DATE
tar -czf docs_backup_$DATE.tar.gz backup_$DATE/docs
rm -rf backup_$DATE
# Backup built documentation
#!/bin/bash
DATE=$(date +%Y%m%d_%H%M%S)
cd docs
npm run build
tar -czf ../docs_site_backup_$DATE.tar.gz _site/
Troubleshooting
Common Issues
Build Failures
Missing Pages
Styling Issues
# Clear cache and rebuild
rm -rf node_modules package-lock.json
npm install
npm run build
- Check
mint.json navigation
- Verify file paths are correct
- Ensure all referenced files exist
- Check for conflicting CSS
- Verify Mintlify components are used correctly
- Test in different browsers
Debug Mode
Enable debug mode for troubleshooting:
Maintenance
Regular Updates
Update Mintlify CLI
npm install -g @mintlify/cli@latest
Check for broken links
npm install -g broken-link-checker
blc http://docs.yourdomain.com
Content Review
Set up regular content reviews:
Quarterly Reviews
Review all documentation quarterly
Update Screenshots
Keep screenshots and examples current
Verify API Changes
Document new API changes
Check Information
Remove outdated information
Support
- Check Mintlify documentation
- Review deployment logs
- Test locally first
- Contact support if needed
Next Steps
After deployment:
Set up monitoring
Configure monitoring and alerts
Configure analytics
Set up analytics tracking
Test functionality
Test all functionality thoroughly
Update DNS
Update DNS and SSL certificates
Inform team
Share new documentation URL with team