feat: Add VitePress docs, EPUB to PDF tool, Phosphor icons, and licensing updates
- Set up VitePress documentation site (docs:dev, docs:build, docs:preview) - Added Getting Started, Tools Reference, Contributing, and Commercial License pages - Created self-hosting guides for Docker, Vercel, Netlify, Cloudflare, AWS, Hostinger, Nginx, Apache - Updated README with documentation link, sponsors section, and docs contribution guide - Added EPUB to PDF converter using LibreOffice WASM - Migrated to Phosphor Icons for consistent iconography - Added donation ribbon banner on landing page - Removed 'Like My Work?' section (replaced by ribbon) - Updated licensing.html with delivery model, AGPL notice, invoicing, and no-refund policy - Added Commercial License documentation page - Updated translations table (Chinese added, marked non-English as In Progress) - Added sponsors.yml workflow for auto-generating sponsor avatars
This commit is contained in:
78
docs/self-hosting/cloudflare.md
Normal file
78
docs/self-hosting/cloudflare.md
Normal file
@@ -0,0 +1,78 @@
|
||||
# Deploy to Cloudflare Pages
|
||||
|
||||
[Cloudflare Pages](https://pages.cloudflare.com) offers fast, global static site hosting with unlimited bandwidth.
|
||||
|
||||
## Quick Deploy
|
||||
|
||||
1. Go to [Cloudflare Pages](https://dash.cloudflare.com/?to=/:account/pages)
|
||||
2. Click "Create a project"
|
||||
3. Connect your GitHub repository
|
||||
|
||||
## Build Configuration
|
||||
|
||||
| Setting | Value |
|
||||
|---------|-------|
|
||||
| Framework preset | None |
|
||||
| Build command | `npm run build` |
|
||||
| Build output directory | `dist` |
|
||||
| Root directory | `/` |
|
||||
|
||||
## Environment Variables
|
||||
|
||||
Add these in Settings → Environment variables:
|
||||
|
||||
| Variable | Value |
|
||||
|----------|-------|
|
||||
| `NODE_VERSION` | `18` |
|
||||
| `SIMPLE_MODE` | `false` (optional) |
|
||||
|
||||
## Configuration File
|
||||
|
||||
Create `_headers` in your `public` folder:
|
||||
|
||||
```
|
||||
# Cache WASM files aggressively
|
||||
/*.wasm
|
||||
Cache-Control: public, max-age=31536000, immutable
|
||||
Content-Type: application/wasm
|
||||
|
||||
# Service worker
|
||||
/sw.js
|
||||
Cache-Control: no-cache
|
||||
```
|
||||
|
||||
Create `_redirects` for SPA routing:
|
||||
|
||||
```
|
||||
/* /index.html 200
|
||||
```
|
||||
|
||||
## Custom Domain
|
||||
|
||||
1. Go to your Pages project
|
||||
2. Click "Custom domains"
|
||||
3. Add your domain
|
||||
4. Cloudflare will auto-configure DNS if the domain is on Cloudflare
|
||||
|
||||
## Advantages
|
||||
|
||||
- **Free unlimited bandwidth**
|
||||
- **Global CDN** with 300+ edge locations
|
||||
- **Automatic HTTPS**
|
||||
- **Preview deployments** for pull requests
|
||||
- **Fast builds**
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Large File Uploads
|
||||
|
||||
Cloudflare Pages supports files up to 25 MB. WASM modules should be fine, but if you hit limits, consider:
|
||||
|
||||
```bash
|
||||
# Split large files during build
|
||||
npm run build
|
||||
```
|
||||
|
||||
### Worker Size Limits
|
||||
|
||||
If using Cloudflare Workers for advanced routing, note the 1 MB limit for free plans.
|
||||
Reference in New Issue
Block a user