<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><channel><description>Independent software maker building practical desktop tools for developers and app creators.</description><link>https://bsky.app/profile/grunersoftware.bsky.social</link><title>@grunersoftware.bsky.social - Martin Grüner | Software maker</title><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3muyo3jl2m225</link><description>Store screenshots are easier to maintain when the source capture and its placement are separate. After an app UI change, replace the shared asset once; each page can keep its own crop, frame, and composition instead of being rebuilt by hand.</description><pubDate>08 Sep 2026 09:03 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3muyo3jl2m225</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3muw4ovitqs2h</link><description>A saved development command is more than a shell string. Its working directory, execution target, recent output, and place in the project are part of its meaning. The command may be `npm run dev`, but the surrounding context is what makes it safely reusable.</description><pubDate>07 Sep 2026 08:47 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3muw4ovitqs2h</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3muto364sps2r</link><description>I turned Apple&#39;s current App Store screenshot requirements into one sourced table covering iPhone, iPad, Mac, Apple TV, Vision Pro, and Watch. JSON and CSV downloads are included for release scripts and checklists. https://martingruner.com/app-store-screenshot-sizes</description><pubDate>06 Sep 2026 09:20 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3muto364sps2r</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3mutmw5n7ok27</link><description>Spreadsheet files are containers, so a raw file diff mostly exposes packaging noise. A useful comparison works at the sheet and cell level: address, stored value, and whether it was added, removed, or changed. That is also how I make cross-format comparisons such as XLSX against ODS useful.</description><pubDate>06 Sep 2026 08:59 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3mutmw5n7ok27</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3muohh4k7yk2w</link><description>DevDock 1.3 is live on the Microsoft Store.&#xA;&#xA;Git work is now safer inside each project: protect local changes while switching branches, see ahead/behind state, review push destinations, handle pull-before-push, and find commands faster.&#xA;&#xA;https://martingruner.com/blog/devdock-1-3</description><pubDate>04 Sep 2026 07:38 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3muohh4k7yk2w</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3mum7sfbk2k2m</link><description>Building in an established category is not necessarily a disadvantage. People already understand the problem.&#xA;&#xA;The real question is whether an awkward workflow is still underserved. With Diff Anything, I’m focusing on local spreadsheet comparison across formats, without converting both sides first.</description><pubDate>03 Sep 2026 10:16 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3mum7sfbk2k2m</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3mujfjvzlgc2s</link><description>When a tool says it supports PDF or spreadsheets, ask what it actually compares: bytes, structure, rendered output, or user-visible values. Those models answer different questions. The same files can be equal in one and different in another.</description><pubDate>02 Sep 2026 07:20 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3mujfjvzlgc2s</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3muhcj5lxvs2c</link><description>One lesson from building desktop software: never hide the intermediate state. For a compare, sync, export, or migration workflow, show the plan before it runs. Let people cancel it. Make failure recoverable. Automation earns trust when the user can still see and control what it is doing.</description><pubDate>01 Sep 2026 11:21 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3muhcj5lxvs2c</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3muh256n66s24</link><description>Diff Anything 1.4 expands archive comparison.&#xA;&#xA;ZIPX, 7z, RAR, TAR, encrypted archives, and supported multipart sets are compared by extracted content instead of packaging noise.&#xA;&#xA;Three-way merge also has a redesigned workspace.&#xA;&#xA;https://martingruner.com/blog/diff-anything-1-4</description><pubDate>01 Sep 2026 08:51 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3muh256n66s24</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3muelrcma2s2z</link><description>Screen Studio Kit 1.3 makes app-store screenshot production faster: compare campaign treatments, start from 20 responsive templates, edit copy in place, import custom fonts, and add multi-device compositions, widgets, and stickers.&#xA;&#xA;Full release: https://martingruner.com/blog/screen-studio-kit-1-3</description><pubDate>31 Aug 2026 09:28 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3muelrcma2s2z</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3mtxum5viec27</link><description>Diff Anything 1.3 is out.&#xA;&#xA;Compare stored spreadsheet values across formats—XLSX ↔ ODS, Numbers ↔ Excel, CSV ↔ workbook—without converting files first.&#xA;&#xA;Also: rebuilt folder diff and clearer PDF visual/text review. Everything stays local.&#xA;&#xA;https://martingruner.com/blog/diff-anything-1-3</description><pubDate>26 Aug 2026 08:02 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3mtxum5viec27</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3mtt2klaebs2y</link><description>TestDock has landed on the App Store 🎉&#xA;&#xA;It gives mobile developers an on-device workspace for saved deep links, repeatable test scenarios, share inputs, and push testing—without a TestDock account or cloud workspace.&#xA;&#xA;See the iOS and Android downloads:&#xA;martingruner.com/apps/testdock&#xA;https://martingruner.com/apps/testdock</description><pubDate>24 Aug 2026 10:05 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3mtt2klaebs2y</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3mto2cwy22k2j</link><description>One store screenshot looks like a small design task. Five languages can turn the release into 130 files.&#xA;&#xA;Calculate the repeated hours and labor cost, then see how Screen Studio Kit turns the matrix into one reusable project.&#xA;&#xA;https://martingruner.com/blog/app-store-screenshots-five-languages-cost</description><pubDate>22 Aug 2026 10:18 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3mto2cwy22k2j</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3mtgy3gnsf225</link><description>Vibe coding can get you to a working app fast—and leave you with an unfamiliar folder and no idea what changed.&#xA;&#xA;Here are 10 ways DevDock helps you run, inspect, and protect AI-built projects without pretending it is an AI assistant.&#xA;&#xA;https://martingruner.com/blog/devdock-for-vibe-coders</description><pubDate>19 Aug 2026 14:49 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3mtgy3gnsf225</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3mtdqhtw7ws25</link><description>Diff Anything 1.2: Free previews for every desktop comparison engine, more accurate structured and visual diffs, safer large-input handling, and one model across desktop, CLI, and batch.&#xA;&#xA;Private and local—no account or telemetry.&#xA;&#xA;https://martingruner.com/blog/diff-anything-1-2</description><pubDate>18 Aug 2026 07:55 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3mtdqhtw7ws25</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3mt7pmgwu3c25</link><description>Screen Studio Kit 1.2 is live. Device frames can now turn and tilt in 3D, with the same perspective carried into native full-resolution export.&#xA;&#xA;See the update and screenshots:&#xA;https://martingruner.com/blog/screen-studio-kit-1-2</description><pubDate>16 Aug 2026 17:29 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3mt7pmgwu3c25</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3mt6rfrlryc2o</link><description>Build store screenshots once, then adapt them across devices and languages.&#xA;&#xA;Screen Studio Kit is my desktop editor for composing, localizing, validating and exporting store-ready screenshots.&#xA;&#xA;Free to try; Pro is a one-time purchase.&#xA;https://martingruner.com/projects/screenshot-studio</description><pubDate>16 Aug 2026 08:28 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3mt6rfrlryc2o</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3mt3dxg7goc2j</link><description>Meet Gerry, my new ChatGPT pet — and, quite literally, my pet.&#xA;&#xA;Gerry was my dog. He is no longer here, but now a little version sits beside me while I work. He even reacts when I move the mouse or hover over him. I’m genuinely happy to have him helping with my work again. 🐾</description><pubDate>14 Aug 2026 23:50 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3mt3dxg7goc2j</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3mt22lljzms2z</link><description>Meet Diff Anything: a private, local-first desktop app for comparing text, JSON, folders, images, and more on macOS and Windows.&#xA;&#xA;Start free. Download from the Mac App Store or Microsoft Store:&#xA;https://martingruner.com/projects/diffanything</description><pubDate>14 Aug 2026 11:29 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3mt22lljzms2z</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3msy7wed5sc2e</link><description>Meet DevDock: a local-first workspace for software projects, saved commands, Docker workflows, database operations, project health, and security checks.&#xA;&#xA;Less time rebuilding context. More time shipping.&#xA;&#xA;https://martingruner.com/projects/devdock</description><pubDate>13 Aug 2026 17:59 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3msy7wed5sc2e</guid></item><item><link>https://bsky.app/profile/grunersoftware.bsky.social/post/3msxav7qw3k2o</link><description>Hello, Bluesky 👋&#xA;&#xA;Grüner Software is the home of independent apps by Martin Grüner: focused productivity tools, mobile testing software, and watch-sized puzzle games.&#xA;&#xA;I’ll share product updates, release notes, and the work behind each app.&#xA;&#xA;martingruner.com&#xA;https://martingruner.com</description><pubDate>13 Aug 2026 08:44 +0000</pubDate><guid isPermaLink="false">at://did:plc:luvphwj635aoh53nga7knv2l/app.bsky.feed.post/3msxav7qw3k2o</guid></item></channel></rss>