Skip to content

Commit be052bd

Browse files
authored
feat(website): add GitHub Pages as fallback deployment (#21)
- Add GitHub Pages deployment to workflow alongside Cloudflare Pages - Both deploys run automatically on push to main when website/** changes - Fallback URL: https://devitools.github.io/arandu/ - Add .nojekyll to prevent Jekyll processing - Document dual-deployment strategy in website/README.md and CLAUDE.md This provides redundancy if Cloudflare has issues or if corporate networks block arandu.app domain resolution.
1 parent 0f207f9 commit be052bd

4 files changed

Lines changed: 69 additions & 1 deletion

File tree

β€Ž.github/workflows/deploy-website.ymlβ€Ž

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,18 @@ jobs:
1414
steps:
1515
- uses: actions/checkout@v4
1616

17+
# Primary: Cloudflare Pages
1718
- name: Deploy to Cloudflare Pages
1819
uses: cloudflare/wrangler-action@v3
1920
with:
2021
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
2122
accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
2223
command: pages deploy website --project-name=arandu
24+
25+
# Fallback: GitHub Pages
26+
- name: Deploy to GitHub Pages (fallback)
27+
uses: peaceiris/actions-gh-pages@v4
28+
with:
29+
github_token: ${{ secrets.GITHUB_TOKEN }}
30+
publish_dir: ./website
31+
cname: arandu.app # Remove this line if you want only .github.io domain

β€ŽCLAUDE.mdβ€Ž

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,11 @@ The IPC layer enables external processes to send commands to the running app. It
177177
CSS styles (`style.css`) and highlight.js files. The Tauri frontend symlinks these files in `apps/tauri/src/`.
178178

179179
### Website (`website/`)
180-
Static landing page deployed to Cloudflare Pages. No build step β€” plain HTML/CSS/JS.
180+
Static landing page with dual deployment for redundancy:
181+
- **Primary:** Cloudflare Pages (https://arandu.app)
182+
- **Fallback:** GitHub Pages (https://devitools.github.io/arandu/)
183+
184+
Both deploy automatically via `deploy-website.yml` on push to `main` when `website/**` changes. No build step β€” plain HTML/CSS/JS.
181185

182186
## Release Process
183187

β€Žwebsite/.nojekyllβ€Ž

Whitespace-only changes.

β€Žwebsite/README.mdβ€Ž

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# Arandu Website
2+
3+
Static landing page for the Arandu project.
4+
5+
## 🌐 Access URLs
6+
7+
### Primary (Cloudflare Pages)
8+
- **URL:** https://arandu.app
9+
- **CDN:** Cloudflare global network
10+
- **Deploy:** Automatic via GitHub Actions
11+
12+
### Fallback (GitHub Pages)
13+
- **URL:** https://devitools.github.io/arandu/
14+
- **CDN:** GitHub CDN
15+
- **Deploy:** Automatic via GitHub Actions (same workflow)
16+
17+
## πŸš€ Deployment
18+
19+
Both deployments happen automatically on push to `main` when `website/**` changes:
20+
21+
1. **Cloudflare Pages** - Primary deployment
22+
2. **GitHub Pages** - Fallback deployment (via `gh-pages` branch)
23+
24+
If Cloudflare experiences issues, use the GitHub Pages URL as an alternative.
25+
26+
## πŸ› οΈ Local Development
27+
28+
```bash
29+
cd website
30+
python -m http.server 8000
31+
# or
32+
npx serve .
33+
```
34+
35+
Access: http://localhost:8000
36+
37+
## πŸ“ Structure
38+
39+
```
40+
website/
41+
β”œβ”€β”€ index.html # Main page
42+
β”œβ”€β”€ css/
43+
β”‚ └── site.css # Styles
44+
β”œβ”€β”€ js/
45+
β”‚ └── theme.js # Dark/light theme toggle
46+
β”œβ”€β”€ favicon-32x32.png
47+
β”œβ”€β”€ apple-touch-icon.png
48+
└── icon.svg
49+
```
50+
51+
## ⚑ Performance
52+
53+
- Size: ~20KB (minified HTML + CSS + JS)
54+
- Load time: <100ms (with CDN)
55+
- 100% static (no build step)

0 commit comments

Comments
Β (0)