{
  "edition": {
    "edition": "2026-09-06-draft-01",
    "language": "en",
    "publicationState": "published",
    "sourceRevision": "a7e788eb4b151fd92c1f58153e015773e3a829af",
    "projectCount": 67,
    "documentCount": 94,
    "skillCount": 10,
    "archivePath": "library.zip",
    "archiveBytes": 181812,
    "releasedAt": "2026-09-08T05:03:11.129+00:00"
  },
  "access": {
    "released": true,
    "rehearsal": false
  },
  "project": "desktop/meme-gif-studio.md",
  "markdown": "https://legion.tw/api/projects/packet.md/desktop/meme-gif-studio.md?edition=2026-09-06-draft-01",
  "documents": [
    {
      "path": "desktop/README.md",
      "text": "# Native desktop applications\n\n[All project types](../README.md) · [Shared launch](../shared/launch.md)\n\nBuild a native Tauri application around the person's work or interests. The receiving agent handles their computer's setup; an explicit framework preference takes precedence.\n\n## Projects to build\n\n- [Calling and follow-up desk](calling-follow-up-desk.md)\n- [Quote and estimate builder](quote-estimate-builder.md)\n- [Photo-to-report desk with an AI colleague](ai-photo-report-desk.md)\n- [Orders and production board](orders-production-board.md)\n- [Equipment checkout and maintenance book](equipment-checkout-book.md)\n- [Booking and session desk](booking-session-desk.md)\n- [Meme and GIF studio](meme-gif-studio.md)\n- [Soundboard](soundboard.md)\n- [Game-show host](game-show-host.md)\n- [Music playground](music-playground.md)\n- [Animated desktop pet](desktop-pet.md)\n- [Tabletop atmosphere controller](tabletop-atmosphere.md)\n- [Ridiculous tournament simulator](ridiculous-tournament.md)\n- [Personal AI chat app with bring-your-own-key access](byok-chat.md)\n\nThese are instructions for projects you can build with your coding agent.\n"
    },
    {
      "path": "desktop/meme-gif-studio.md",
      "text": "# Build a meme and GIF studio\n\nBuild a native Tauri application for making memes, animated GIFs, and playful image effects. Build it extremely well as a creative tool someone will enjoy using. Use the person's preferred framework if they explicitly choose another, and follow the [shared launch](../shared/launch.md).\n\nGive them an enjoyable first composition to play with and an easy way to bring in their own material. Their taste should shape the studio as they discover what they want to make.\n\n## Work directly on the joke\n\nThe main working experience is the image or animation being made. Let the person place and resize pictures, move captions, adjust text, and see the result as they work. Make selection understandable and changes easy to undo. Common meme layouts can offer useful starting points while remaining editable.\n\nReadable text matters. Let the person control its position, size, color, and treatment against the image, with good defaults for contrast and long captions. Support the languages they intend to use. A caption should remain legible when the finished image is viewed at the size their friends will see it.\n\nHelp them make variations quickly. They might try three captions against the same picture or move a character to a different background. Preserve the work they want to keep so experimentation feels inexpensive.\n\n## Make movement part of the punchline\n\nProvide a clear way to assemble a GIF from a sequence of images or visual changes. Let the person control how long each part appears, preview the loop, and adjust where text or effects enter. They should be able to pause and examine the point they are changing.\n\nImagine an opening caption followed by a sudden ridiculous image. The timing determines whether the joke works. Make it easy to lengthen the opening, shorten the reveal, and play the result again. The exported animation should preserve the timing they chose.\n\nInclude a satisfying set of simple glitch effects, such as color separation, displaced strips, and pixelation. Give each effect controls whose results are easy to recognize in the preview. Let the person combine effects and compare them with the original.\n\n## Keep the editable work\n\nSave compositions with the pictures, captions, arrangement, animation, and effect choices needed to revise them later. Keep original images available. An exported meme is a finished picture; the saved project is where the person can change its words tomorrow.\n\nExport still images and GIFs in useful sizes, explaining the tradeoff between image dimensions, animation length, and file size when it becomes relevant. Show the actual exported result, including how a loop plays in an ordinary viewer. Make it easy to find the file and send it through the person's usual sharing method.\n\nUse material the person owns or has permission to use for the starter examples. They should be able to enjoy the first app with local images and its built-in editing capabilities.\n\n## Make something worth sending\n\nCarry the project through an installed application and a finished creation. Work with the person to make a still meme and an animated version, save the editable work, reopen it, and change the joke. Ask what felt awkward while they were making it and improve those interactions.\n\nUse the experience to explain why a saved project and an exported file are different, and how they can direct software through the result they want: “Let me move this,” “Keep the caption readable,” or “Hold that frame longer.” They already know how to judge much of the experience.\n\nLater projects can add richer animation or convenient transfer from a phone. Preserve the compositions made here so new capabilities give the person more to do with work they already like.\n"
    }
  ]
}