{
  "version": "https://jsonfeed.org/version/1.1",
  "title": "Rapture",
  "home_page_url": "https://www.getschwifty.me/",
  "feed_url": "https://www.getschwifty.me/feed.json",
  "description": "A deep-sea ink universe for writing and photography.",
  "language": "en",
  "icon": "https://www.getschwifty.me/icon-512.png",
  "favicon": "https://www.getschwifty.me/favicon.png",
  "items": [
    {
      "id": "https://www.getschwifty.me/blog/r2-photo-pipeline/",
      "url": "https://www.getschwifty.me/blog/r2-photo-pipeline/",
      "title": "R2 之后，给照片一条更直的水路",
      "summary": "一次把 NAS 图床迁到 R2，又把多余发布脚本和图片派生管线删掉的短记。",
      "content_text": "一次把 NAS 图床迁到 R2，又把多余发布脚本和图片派生管线删掉的短记。",
      "date_published": "2026-06-26T00:00:00.000Z",
      "date_modified": "2026-06-26T00:00:00.000Z",
      "tags": [
        "note",
        "infra",
        "gallery"
      ],
      "image": "https://file.getschwifty.me/2026/06/1782475604803-1jg2wd3d.webp",
      "_rapture": {
        "type": "writing",
        "slug": "r2-photo-pipeline"
      }
    },
    {
      "id": "https://www.getschwifty.me/gallery/moonlit-colossus/",
      "url": "https://www.getschwifty.me/gallery/moonlit-colossus/",
      "title": "Moonlit Colossus",
      "summary": "Unknown Coast / blue myth under a cold moon",
      "content_text": "The frame feels like a memory that never belonged to the surface: too quiet, too blue, and too certain of its own impossible scale.",
      "date_published": "2026-06-26T00:00:00.000Z",
      "date_modified": "2026-06-26T00:00:00.000Z",
      "image": "https://file.getschwifty.me/2026/06/1782475845409-2hefyiye.webp",
      "_rapture": {
        "type": "gallery",
        "slug": "moonlit-colossus",
        "image": "https://file.getschwifty.me/2026/06/1782475845409-2hefyiye.webp",
        "location": "Unknown Coast",
        "tone": "blue myth under a cold moon",
        "width": 5040,
        "height": 2160
      }
    },
    {
      "id": "https://www.getschwifty.me/blog/chosen-impossible/",
      "url": "https://www.getschwifty.me/blog/chosen-impossible/",
      "title": "I Chose the Impossible",
      "summary": "A first note on naming a private place Rapture.",
      "content_text": "A first note on naming a private place Rapture.",
      "date_published": "2026-06-20T00:00:00.000Z",
      "date_modified": "2026-06-20T00:00:00.000Z",
      "tags": [
        "rapture",
        "note",
        "design"
      ],
      "_rapture": {
        "type": "writing",
        "slug": "chosen-impossible"
      }
    },
    {
      "id": "https://www.getschwifty.me/blog/pressure-log-private-interface/",
      "url": "https://www.getschwifty.me/blog/pressure-log-private-interface/",
      "title": "Pressure Log: Designing a Private Interface",
      "summary": "A longer field note on chapters, code, tables, images, and the slow mood of Rapture.",
      "content_text": "A longer field note on chapters, code, tables, images, and the slow mood of Rapture.",
      "date_published": "2026-06-19T00:00:00.000Z",
      "date_modified": "2026-06-19T00:00:00.000Z",
      "tags": [
        "frontend",
        "writing",
        "archive"
      ],
      "image": "https://images.unsplash.com/photo-1519608487953-e999c86e7455?auto=format&fit=crop&w=1600&q=82",
      "_rapture": {
        "type": "writing",
        "slug": "pressure-log-private-interface"
      }
    },
    {
      "id": "https://www.getschwifty.me/blog/surface-tension/",
      "url": "https://www.getschwifty.me/blog/surface-tension/",
      "title": "Surface Tension",
      "summary": "Short notes on making an interface feel like liquid instead of chrome.",
      "content_text": "Short notes on making an interface feel like liquid instead of chrome.",
      "date_published": "2026-06-18T00:00:00.000Z",
      "date_modified": "2026-06-18T00:00:00.000Z",
      "tags": [
        "frontend",
        "motion"
      ],
      "_rapture": {
        "type": "writing",
        "slug": "surface-tension"
      }
    },
    {
      "id": "https://www.getschwifty.me/gallery/night-platform/",
      "url": "https://www.getschwifty.me/gallery/night-platform/",
      "title": "Night Platform",
      "summary": "Chongqing / sodium vapor and rain",
      "content_text": "Sodium light, wet concrete, and the private feeling of leaving late.",
      "date_published": "2026-01-08T00:00:00.000Z",
      "date_modified": "2026-01-08T00:00:00.000Z",
      "image": "https://images.unsplash.com/photo-1519608487953-e999c86e7455?auto=format&fit=crop&w=1400&q=82",
      "_rapture": {
        "type": "gallery",
        "slug": "night-platform",
        "image": "https://images.unsplash.com/photo-1519608487953-e999c86e7455?auto=format&fit=crop&w=1400&q=82",
        "location": "Chongqing",
        "tone": "sodium vapor and rain",
        "width": 1400,
        "height": 933
      }
    },
    {
      "id": "https://www.getschwifty.me/gallery/glass-after-rain/",
      "url": "https://www.getschwifty.me/gallery/glass-after-rain/",
      "title": "Glass After Rain",
      "summary": "Shanghai / quiet blue",
      "content_text": "The city keeps a second, quieter version of itself in wet glass.",
      "date_published": "2025-12-19T00:00:00.000Z",
      "date_modified": "2025-12-19T00:00:00.000Z",
      "image": "https://images.unsplash.com/photo-1494526585095-c41746248156?auto=format&fit=crop&w=1400&q=82",
      "_rapture": {
        "type": "gallery",
        "slug": "glass-after-rain",
        "image": "https://images.unsplash.com/photo-1494526585095-c41746248156?auto=format&fit=crop&w=1400&q=82",
        "location": "Shanghai",
        "tone": "quiet blue",
        "width": 1400,
        "height": 934
      }
    },
    {
      "id": "https://www.getschwifty.me/gallery/submerged-stair/",
      "url": "https://www.getschwifty.me/gallery/submerged-stair/",
      "title": "Submerged Stair",
      "summary": "Tokyo / brass dusk",
      "content_text": "Warm dusk caught on hard edges, like brass under shallow water.",
      "date_published": "2025-11-03T00:00:00.000Z",
      "date_modified": "2025-11-03T00:00:00.000Z",
      "image": "https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=1400&q=82",
      "_rapture": {
        "type": "gallery",
        "slug": "submerged-stair",
        "image": "https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=1400&q=82",
        "location": "Tokyo",
        "tone": "brass dusk",
        "width": 1400,
        "height": 2100
      }
    },
    {
      "id": "https://www.getschwifty.me/gallery/last-light/",
      "url": "https://www.getschwifty.me/gallery/last-light/",
      "title": "Last Light",
      "summary": "Hangzhou / green shadow",
      "content_text": "The last light before the scene turns into memory.",
      "date_published": "2025-08-24T00:00:00.000Z",
      "date_modified": "2025-08-24T00:00:00.000Z",
      "image": "https://images.unsplash.com/photo-1500534314209-a25ddb2bd429?auto=format&fit=crop&w=1400&q=82",
      "_rapture": {
        "type": "gallery",
        "slug": "last-light",
        "image": "https://images.unsplash.com/photo-1500534314209-a25ddb2bd429?auto=format&fit=crop&w=1400&q=82",
        "location": "Hangzhou",
        "tone": "green shadow",
        "width": 1400,
        "height": 2100
      }
    },
    {
      "id": "https://www.getschwifty.me/gallery/window-memory/",
      "url": "https://www.getschwifty.me/gallery/window-memory/",
      "title": "Window Memory",
      "summary": "Nanjing / old glass",
      "content_text": "Old glass turns ordinary light into something archival.",
      "date_published": "2025-06-12T00:00:00.000Z",
      "date_modified": "2025-06-12T00:00:00.000Z",
      "image": "https://images.unsplash.com/photo-1493246507139-91e8fad9978e?auto=format&fit=crop&w=1400&q=82",
      "_rapture": {
        "type": "gallery",
        "slug": "window-memory",
        "image": "https://images.unsplash.com/photo-1493246507139-91e8fad9978e?auto=format&fit=crop&w=1400&q=82",
        "location": "Nanjing",
        "tone": "old glass",
        "width": 1400,
        "height": 933
      }
    },
    {
      "id": "https://www.getschwifty.me/gallery/city-current/",
      "url": "https://www.getschwifty.me/gallery/city-current/",
      "title": "City Current",
      "summary": "Hong Kong / cyan bloom",
      "content_text": "The city moves like current when the windows start to light up.",
      "date_published": "2025-03-15T00:00:00.000Z",
      "date_modified": "2025-03-15T00:00:00.000Z",
      "image": "https://images.unsplash.com/photo-1514565131-fce0801e5785?auto=format&fit=crop&w=1400&q=82",
      "_rapture": {
        "type": "gallery",
        "slug": "city-current",
        "image": "https://images.unsplash.com/photo-1514565131-fce0801e5785?auto=format&fit=crop&w=1400&q=82",
        "location": "Hong Kong",
        "tone": "cyan bloom",
        "width": 1400,
        "height": 850
      }
    }
  ]
}