A photo gallery frontend built with Remix and Cloudflare Pages (D1, Turnstile) featuring a warm archive style, justified waterfall layout, lightbox, and CAPTCHA-protected sessions.

Stars

70

7-day growth

No data

Forks

3

Open issues

0

License

No data

Last updated

2026-06-30

AI repository intelligence
FR-AI / ANALYSIS

Why it is worth attention

Combines modern web framework (Remix) with serverless edge infrastructure (Cloudflare) for a performant, secure, and visually appealing image gallery.

Who it is for

  • Web developers interested in Remix and Cloudflare Pages
  • Photographers or content creators needing a lightweight gallery
  • Developers exploring serverless image hosting solutions
  • Open-source enthusiasts looking for a well-structured gallery project

Use cases

  • Personal photo portfolio or archive
  • Small-scale image sharing site
  • Learning reference for Remix + Cloudflare stack
  • Quickly deployable gallery with CAPTCHA protection

Strengths

  • Modern stack (Remix, Cloudflare) ensures performance and scalability
  • Warm archive UI with dual theme support enhances user experience
  • Justified waterfall layout and lightbox provide smooth browsing
  • Turnstile integration offers bot protection without intrusive CAPTCHAs

Considerations

  • Data currently tied to Cloudflare D1, requiring familiarity with that service
  • Once-time open-source snapshot may not reflect ongoing development
  • Limited built-in admin or upload functionality; likely requires external data management

README quick start

栖光集 · A Light Archive

一个图库前端 —— Remix + Cloudflare Pages(D1 / Turnstile)。

线上: https://xrw-album.christin3.com

特性

  • 暖色"档案"风格,暗 / 亮双主题(跟随系统 + 手动切换,见 app/components/ThemeToggle.tsx
  • Justified 瀑布布局 + 灯箱(缩略图条、键盘 / 箭头 / 触摸滑动切换,见 app/components/Lightbox.tsx
  • Turnstile 人机验证门 + 基于 cookie 的会话(app/routes/_index.tsxapp/sessions.server.ts

本地运行

npm install
cp .dev.vars.example .dev.vars   # 填入 SESSION_SECRET / TURNSTILE_SECRET_KEY
npm run dev

数据来自 Cloudflare D1(表结构见各 loader 的查询,如 app/routes/_index.tsxapp/routes/album.$id.tsx)。绑定与项目配置见 wrangler.toml

部署

npm run deploy   # remix build + wrangler pages deploy

生产环境的密钥用 wrangler pages secret put SESSION_SECRET / ... TURNSTILE_SECRET_KEY 设置。

注:本仓库是某次前端代码的一次性开源快照,可能不随线上持续更新。

Related repositories

Similar projects matched by category, topics, and programming language.

TanStack
Featured
TanStack GitHub avatar

router

TanStack Router is a type-safe, data-driven React router with built-in caching, prefetching, and nested layouts, while TanStack Start extends it into a full-stack SSR framework.

Web DevelopmentFrontend Frameworks
14,861
vercel-labs
Featured
vercel-labs GitHub avatar

scriptc

scriptc compiles ordinary TypeScript into small, fast native executables without needing Node.js, V8, or any JavaScript runtime in the binary.

Developer ToolsCode Quality & Build
1,985
Jakubantalik
Featured
Jakubantalik GitHub avatar

thinking-orbs

A React component library that renders six hand-tuned animated thought orb loading indicators on a plain 2D canvas, with two purpose-tuned sizes and automatic theme detection for AI and agent UIs.

AI & Machine LearningAI Agents
1,191