Szukaj

Nowe logo i migracja do Astro: jls42.org odświeżone
blog

Nowe logo i migracja do Astro: jls42.org odświeżone

Nowe logo i migracja do Astro: jls42.org odświeżone

Blog został odświeżony! Po kilku latach na Hugo postanowiłem wszystko przemyśleć na nowo: nowe logo, nowy framework, nowy design. Oto historia tej przemiany.

Nowe logo: gdy SI wkracza do identyfikacji

Nowe logo zawiera teraz symbolikę sztucznej inteligencji:

  • Sieci neuronowe widoczne po lewej stronie, z ich świetlnymi połączeniami w różowym i niebieskim kolorze
  • Tekst “AI” dodany wyraźnie, aby podkreślić tę wymiar
  • Obwody drukowane zintegrowane w projekcie, przywołujące hardware napędzający modele
  • Organiczny kształt sugerujący jednocześnie mózg i serce — fuzję inteligencji i pasji

To nowe logo zostało wygenerowane przy pomocy SI — logiczne dla bloga o SI, który teraz masowo korzysta z tych narzędzi na co dzień, by przyspieszyć pracę.

Migracja z Hugo do Astro

Dlaczego zmiana?

Miałem ochotę na zmianę. Zaczynałem bloga z minimalnymi środkami: darmowym szablonem Hugo znalezionym w sieci i moimi artykułami. Trochę go już ręcznie dostosowałem, a potem z pojawieniem się SI mogłem pójść dalej. Ale teraz, z agentami kodu jak Claude Code — to szaleństwo! Generowanie kodu stało się tak proste, że pomyślałem, że bardziej nowoczesny i konfigurowalny framework jest w moim zasięgu. Jako ktoś bardziej DevOps/infra niż frontendowy deweloper, postanowiłem się za to zabrać.

Przed/po są naprawdę różne. Nowy design jest ładny, czysty, nowoczesny — i to w obu motywach (jasnym i ciemnym).

Proces migracji

Migracja przebiegła dość szybko, w ciągu dwóch wieczorów, we współpracy z Claude Code.

Oto jak to wyglądało:

  1. Ustalenie planu: poprosiłem Claude Code o zaproponowanie strategii migracji, używając MCP Astro by mieć dostęp do oficjalnej dokumentacji
  2. Przygotowanie projektu Astro: utworzenie struktury, konfiguracja i18n dla 15 języków
  3. Migracja treści FR: wszystkie artykuły, projekty i strony przekonwertowane z formatu Hugo do Astro/MDX
  4. Migracja assetów: logotypy, kluczowe obrazy
  5. Nowy design: kompletna przebudowa layoutów (Header, Footer, ArticleCard…) z nowoczesnym stylem
  6. Integracja aktualności: wcześniej zacząłem osobny serwis Astro poświęcony aktualnościom o SI. Ostatecznie połączyłem aktualności z blogiem dla większej spójności — wszystko w jednym miejscu. Claude przeniósł treści i dostosował zautomatyzowany workflow tworzenia artykułów
  7. Tłumaczenie masowe: skorzystałem z tej migracji, by odświeżyć wszystkie tłumaczenia za pomocą mojego usprawnionego skryptu Python (patrz kolejna sekcja)
  8. Testy w przeglądarce: Claude testował stronę na bieżąco, by naprawiać problemy na każdym etapie

Automatyczne tłumaczenie na 15 języków

Używam mojego skryptu Python ai-powered-markdown-translator od stycznia 2024. Projekt mocno się rozwinął od tego czasu — piszę o tym w kilku artykułach na tym blogu.

Duże wyzwanie

Mógłbym ponownie wykorzystać stare tłumaczenia, ale chciałem sprawdzić mój skrypt w prawdziwym wyzwaniu: przetłumaczyć całą zawartość bloga za jednym zamachem. Najpierw testowaliśmy na 2–3 artykułach i kilku językach, żeby dopracować kod Pythona, potem poprosiłem Claude Code o stworzenie skryptu bash uruchamiającego tłumaczenia masowo — 10 plików równolegle. Gdy skrypt był zatwierdzony, uruchomiliśmy pełny batch.

Ulepszenia skryptu

Przy tej migracji mogłem dodać istotne funkcje:

  • Option --keep_filename: zachowanie tej samej nazwy pliku w wyjściu
  • Support .env: brak konieczności ręcznego eksportowania kluczy API
  • Zachowanie kodu inline: backticky nie giną już w trakcie tłumaczenia
  • Tryb ekonomiczny: używanie tańszych modeli dla dużych wolumenów

Skrypt obsługuje kilku providerów (OpenAI, Anthropic, Mistral, Gemini) i inteligentnie zarządza blokami kodu, formułami LaTeX oraz frontmatter YAML.

Statystyki

Dla tego bloga, oto liczby:

  • 22 artykuły na blogu
  • 4 projekty
  • × 14 języków = 364 przetłumaczone pliki
  • 0 nieudanych tłumaczeń

Strategia wdrożenia

Aby migrować bez ryzyka, stworzyłem równoległą infrastrukturę na AWS:

  • Nowy bucket S3 dedykowany stronie Astro
  • Nowa dystrybucja CloudFront
  • Nowy certyfikat ACM
  • DNS podglądowy (preview.jls42.org) do testów w warunkach rzeczywistych

Takie podejście pozwoliło mi mieć oba serwisy równolegle podczas testów. Po weryfikacji przełączenie nastąpiło przez Route 53 — z możliwością natychmiastowego rollbacku. Wszystko poszło gładko, stara infrastruktura mogła zostać usunięta.

Co ujawnia ten projekt

Ta migracja ilustruje mój sposób pracy:

  • Opanowanie agentów kodu: po miesiącach używania potrafię wystarczająco korzystać z tych narzędzi, by powierzyć im kompletny projekt migracji
  • Wyjście ze strefy komfortu: jako profil DevOps/infra, wejście w nowoczesny framework webowy było wyzwaniem — i to właśnie czyni projekt interesującym
  • Eksperymentowanie z SI: chciałem sprawdzić, czy mogę zrobić wszystko tylko za pomocą promptów — i tak, udało się. Wszystko zostało zrealizowane z Claude Code, Gemini CLI i Codex (ale głównie Claude Code)
  • Automatyzacja: nigdy nie robić ręcznie tego, co może zrobić skrypt, i mieć automatyczny workflow weryfikacji
  • Open source: tłumacz jest dostępny na GitLabie

Dodałem też sekcję z aktualnościami o SI na blogu — opowiem o tym w dedykowanym artykule.


Dziękuję za przeczytanie! Jeśli masz pytania lub uwagi, nie wahaj się ze mną skontaktować. Powodzenia i do zobaczenia na blogu!

Niniejszy dokument został przetłumaczony z wersji fr na język pl przy użyciu modelu gpt-5-mini. Aby uzyskać więcej informacji na temat procesu tłumaczenia, zobacz https://gitlab.com/jls42/ai-powered-markdown-translator