Rozkład: własna apka do publikacji na trzy konta, zbudowana w jeden dzień zamiast planu za 300 dolarów
11 września o 13:17 pierwszy commit, o 23:36 wersja 1.6. Jedna kartka na trzy konta Buffera, sześć kanałów, generator opisu w moim głosie i 3,2 MB binarki na Macu.
Rozkład to apka na Macu, która pokazuje trzy moje konta w Bufferze na jednej kartce: konto osobiste, Motion Pikczer i habitat, sześć kanałów w wierszach, dni w kolumnach. Opublikowane jako pełny blok, zaplanowane jako obrys, szkic jako kreska. Powstała 11 września między 13:17 a 23:36, w 39 commitach, i od wczoraj wieczora publikuję wyłącznie z niej.
Skąd się wzięła
8 września zapisałem decyzję: własnego narzędzia nie budujemy, płatny plan dopiero, gdy kolejka przekroczy dziesięć postów. 9 września policzyłem, ile kosztuje pięć kanałów w jednym koncie Buffera: Essentials, 300 dolarów rocznie. 11 września wybrałem trzecią drogę. Regulamin Buffera nie ma klauzuli o jednym koncie na osobę, więc każda marka dostała własne darmowe konto z trzema kanałami. Problem, który został: trzy konta to trzy osobne kalendarze i żaden nie pokazuje całości.
Rozkład jest tą całością. Stan apki to dwa pliki JSON na dysku: posty pobrane z Buffera i moje wpisy „to idzie tego dnia o tej godzinie”. Apka czyta je co dwie sekundy. Dzięki temu asystent w dowolnej sesji, Claude Code albo Codex, steruje nią jedną komendą i wpis pojawia się w oknie po dwóch sekundach, bez żadnego serwera pomiędzy. Zapis jest atomowy, a zmiany scalają się per wpis, więc gdy asystent oznacza coś jako zrobione w trakcie, gdy ja piszę notatkę, nikt nikogo nie nadpisuje.
Co robi okno publikacji
Dwuklik w dzień otwiera jedno okno: kanał, media, opis, data i godzina. Plik z Findera upuszczam na dzień, folder ze zdjęciami staje się karuzelą na Instagram, zdjęcia docinają się do 4:5. Karuzela może mieszać zdjęcia z wideo, do dziesięciu pozycji, kolejność zmieniam przeciąganiem w pasku.
Ramka „Claude, wytyczne” to generator opisu. Wpisuję dwa zdania, co podkreślić i czego nie pisać, a asystent dostaje mój głos z plików, ostatnie posty z tego kanału, opis realizacji z projektu i pisze szkic do poprawy. Pierwsza karuzela wyszła z tego okna 11 września o 20:43, sześć kadrów na Instagram Motion Pikczer. Pierwsza rolka o 22:57, na habitat.
Jedna zasada, którą ustaliłem tego dnia po pierwszej publikacji: wpis w Rozkładzie jest decyzją, nie szkicem do oglądania. Jeżeli coś wrzucam, to po to, żeby to wyszło. Zrobione znika. Automat, który miał publikować sam o 8:00 i 16:00, jest gotowy i wyłączony. Publikuję ja.
Liczby z maszyny
Apka to Tauri 2: 928 linii HTML, 484 linie JavaScriptu, 403 linie Rusta, 359 linii CSS, do tego 591 linii Pythona na komendę, pobieranie z Buffera i generator opisu. Binarka po przełączeniu kompilacji na rozmiar zamiast szybkości schudła z 10,2 do 3,2 MB, bo apka i tak czeka na sieć i dysk. Fonty Archivo Narrow i IBM Plex Mono leżą w środku, więc działa bez sieci. Okno ma minimum 1420 na 901 pikseli i pamięta, gdzie stało.
Dwie pułapki po drodze. Buffer generuje miniaturę wideo sam, ale jego robot dostaje 422 od zapory na moim serwerze, więc apka robi własny poster z klatki i wysyła go obok pliku. I zapis posta w Bufferze nie scala pól: planując szkic bez ponownego przesłania tekstu i mediów dostajesz „Post must have either text or media”. Każdy zapis niesie wszystko.
Całość powstała w rozmowie z Claude Code w aplikacji na Macu, nie w edytorze kodu. Ja opisywałem, co ma się stać po dwukliku, on pisał, ja klikałem i mówiłem, co się rozjeżdża. Dziesięć godzin i dziewiętnaście minut, licząc od pierwszego commita do numeru 1.6.0.