<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Cloudflare | Dylan Chiang</title><link>https://dylanchiang-dev.github.io/en/tags/cloudflare/</link><atom:link href="https://dylanchiang-dev.github.io/en/tags/cloudflare/index.xml" rel="self" type="application/rss+xml"/><description>Cloudflare</description><generator>Hugo Blox Builder (https://hugoblox.com)</generator><language>en-US</language><lastBuildDate>Thu, 02 Oct 2025 00:00:00 +0000</lastBuildDate><image><url>https://dylanchiang-dev.github.io/media/icon_hu_982c5d63a71b2961.png</url><title>Cloudflare</title><link>https://dylanchiang-dev.github.io/en/tags/cloudflare/</link></image><item><title>Home task management system: Cloudflare full-stack collaboration platform</title><link>https://dylanchiang-dev.github.io/en/project/family-task-manager/</link><pubDate>Thu, 02 Oct 2025 00:00:00 +0000</pubDate><guid>https://dylanchiang-dev.github.io/en/project/family-task-manager/</guid><description>&lt;p>The family task management system is an open source collaboration platform for families and small teams. It integrates tasks, calendars, inspiration boxes, periodic schedules, member divisions and notifications into the same interface, and uses Cloudflare&amp;rsquo;s edge services to complete front-end and data layer deployment.&lt;/p>
&lt;h2 id="what-i-am-responsible-for-in-the-project">What I am responsible for in the project&lt;/h2>
&lt;p>This is a full-stack open source project designed, developed and maintained by me. I completed a complete refactoring from an early PHP version to an end-to-end TypeScript architecture.&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Product Definition&lt;/strong>: Starting from the needs of family members to jointly manage daily tasks, core processes such as workbench, tasks, calendar, inspiration box, classification, member and personal settings are designed.&lt;/li>
&lt;li>&lt;strong>Architecture Refactoring&lt;/strong>: Refactor the PHP and MySQL monolithic systems into an edge-native architecture composed of React, Hono, Cloudflare Workers, D1, KV and R2.&lt;/li>
&lt;li>&lt;strong>Data and API&lt;/strong>: Design data models, validation rules and APIs for teams, tasks, categories, comments, notifications, periodic tasks and schedule blocks.&lt;/li>
&lt;li>&lt;strong>Complex task logic&lt;/strong>: Implement periodic task generation, time window, backlog tasks, calendar view and schedule update, and handle cross-layer data consistency.&lt;/li>
&lt;li>&lt;strong>Identity and Permissions&lt;/strong>: Create JWT access tokens, KV refresh sessions, team isolation and role permissions.&lt;/li>
&lt;li>&lt;strong>Engineering quality&lt;/strong>: using monorepo, front-end and back-end shared Zod schema, type checking, unit testing and Cloudflare automatic deployment.&lt;/li>
&lt;/ul>
&lt;h2 id="core-innovation">Core Innovation&lt;/h2>
&lt;h3 id="1-shift-from-personal-to-do-to-family-collaboration">1. Shift from personal to-do to family collaboration&lt;/h3>
&lt;p>The system not only manages the list of a single user, but also supports member assignment, classification, comments, notifications and multi-view workbench based on family or small team units.&lt;/p>
&lt;h3 id="2-unify-multiple-tasks-with-time-semantics">2. Unify multiple tasks with time semantics&lt;/h3>
&lt;p>General tasks, periodic tasks, time windows, itineraries and inspiration boxes each have different life cycles. The system allows different tasks to be managed in a consistent operating model by sharing data contracts and calendar views.&lt;/p>
&lt;h3 id="3-end-to-end-typescript-contract">3. End-to-end TypeScript contract&lt;/h3>
&lt;p>The front-end, back-end and shared packages are located in the same pnpm workspace, and Zod schema and type sharing are used to reduce API field drift, allowing input validation and type safety to extend from the interface to the data layer.&lt;/p>
&lt;h3 id="4-edge-native-low-dimensional-operation-architecture">4. Edge-native low-dimensional operation architecture&lt;/h3>
&lt;p>The frontend is deployed on Cloudflare Pages, the API runs on Workers, and the data uses D1, KV and R2. This architecture reduces traditional server maintenance while retaining database, cache, file and scheduling capabilities.&lt;/p>
&lt;h2 id="technical-architecture">Technical architecture&lt;/h2>
&lt;ul>
&lt;li>&lt;strong>Front-end&lt;/strong>: React, TypeScript, Vite, Tailwind CSS, shadcn/ui, PWA&lt;/li>
&lt;li>&lt;strong>Backend&lt;/strong>: Hono, Cloudflare Workers, Zod&lt;/li>
&lt;li>&lt;strong>Data layer&lt;/strong>: Cloudflare D1, Drizzle ORM, KV, R2&lt;/li>
&lt;li>&lt;strong>Engineering&lt;/strong>: pnpm workspace, Vitest, MSW, Cloudflare Pages&lt;/li>
&lt;li>&lt;strong>Authorization&lt;/strong>: MIT License&lt;/li>
&lt;/ul>
&lt;p>
·
&lt;/p></description></item></channel></rss>