notACMS 1.1.0 — Minimalny rdzeń, motyw demo, wybierz swój
1.1.0 dzieli notACMS na minimalny rdzeń i opcjonalny motyw demo. Wybierz punkt startowy flagą --bare lub --demo; personalizuj wszystko przez local/ bez dotykania rdzenia.
Dwa motywy, jeden wybór przy pierwszym buildzie
Najważniejsza zmiana w 1.1.0: notACMS wysyła teraz dwa motywy w pakiecie, a ty wybierasz jeden już przy pierwszym buildzie:
./notACMS deploy --demo # domyślny — projekt amber-phosphor, który widzisz tutaj
./notACMS deploy --bare # minimalny wireframe: fonty systemowe, jasny tryb, ~200 linii CSS
ddev build obsługuje te same flagi. Cokolwiek wybierzesz, działa każda funkcja: treści wielojęzyczne, blog, RSS, sitemap, wyszukiwarka, formularz kontaktowy, obrazy z wariantami responsywnymi, czas czytania, wskaźnik postępu czytania. Różnica leży jedynie w wyglądzie — i, co najważniejsze, w tym, ile dziedziczysz, zanim zaczniesz dopasowywać.
Minimalny rdzeń
Rdzeń w templates/, assets/, translations/ jest teraz wireframem. Został świadomie zminimalizowany, żeby nadpisanie pojedynczego bloku nie ciągnęło za sobą języka wizualnego, z którym musiałbyś walczyć. Jeśli budujesz projekt szyty na miarę, startuj z bare i od pierwszego dnia kontrolujesz cały wygląd.
Motyw demo
Demo żyje w docs/demo/ i kopiowane jest do local/, kiedy wybierzesz --demo. To pełny projekt amber-phosphor, który właśnie czytasz — ciemny tryb, overlay wyszukiwania, sidebar dokumentacji, przełącznik motywu, wszystko razem. Startuj stąd, jeśli chcesz dopracowany projekt już dziś i planujesz dopracowywać, a nie przebudowywać.
System nadpisań local/
Oba motywy korzystają z tego samego mechanizmu: każdy plik w local/ ma pierwszeństwo przed odpowiadającą mu ścieżką w rdzeniu.
| Warstwa | Lokalizacja nadpisania | Resolver |
|---|---|---|
| Szablony Twig | local/templates/*.html.twig |
Kernel Symfony |
| Entrypoint SCSS | local/assets/styles/app_local.scss |
Sass-bundle |
| Entrypoint JS | local/assets/app.js |
Importmapa AssetMappera |
| Tłumaczenia | local/translations/messages.*.yaml |
Translator Symfony |
| Treści | local/content/** |
Parametr notacms_content |
| Snippety Nginx | local/docker/nginx/*.conf |
Entrypoint kontenera |
Rdzeń nie jest nigdy edytowany. git pull pozostaje czysty. Personalizacje żyją w repozytorium twojej strony, nie w forku tego repo.
Aktualizacja z 1.0.0
Jeśli używałeś 1.0.0 i chcesz, żeby twoja strona wyglądała dokładnie jak wcześniej, pakiet kompatybilności to jedna linijka:
cp -r docs/customization/old-template/. local/
ddev build
To wrzuca kompletny motyw sprzed 1.1.0 — szablony, SCSS, fonty, obrazy, tłumaczenia — do local/. Twoja strona renderuje się dokładnie jak przedtem. Później możesz selektywnie usuwać pliki z local/, w miarę jak adaptujesz nowe elementy projektu.
Faktyczne breaking changes, które cię dotkną, jeśli dostosowywałeś stary rdzeń:
- Zmiana nazwy entrypointa SCSS:
local/assets/styles/local.scss→local/assets/styles/app_local.scss. Zmień nazwę pliku i zaktualizuj import wlocal/assets/app.js. - Zmienne SCSS kolorów w rdzeniu zastąpione CSS custom properties:
$color-body→var(--text),$color-link→var(--accent)itd. Pełna mapa w UPGRADE-1.1.md. - Klucze tłumaczeń usunięte z rdzenia (nadal obecne w motywie demo):
header.tagline,nav.projects,nav.search,blog.published_on,blog.comments_disabled. Jeśli twoje szablony wołają'...'|transna tych kluczach, zaktualizuj je. - Katalog
docs/examples/usunięty: przydatne części trafiły dodocs/customization/old-template/; przykłady nadpisań ad hoc zostały wyparte przez model bare/demo.
Zobacz UPGRADE-1.1.md po pełną listę ze snippetami przed/po.
Co jeszcze nowego w 1.1.0
- Czas czytania i wskaźnik postępu czytania na wpisach, dokumentacji i releasach.
- Przełącznik języka jako rozszerzenie Twiga (
lang_switch_urls) z poprawnymi łańcuchami fallbacków dla archiwów, list z paginacją i stron głównych. - Zajawki wpisów usuwają kotwice nagłówków — żadnych zbłąkanych
#na kartach list. - Szkielet suite testów w
tests/Unit/,tests/Integration/,tests/Fixtures/z początkowym pokryciem i komendątesturuchamianą z hosta. - Skille agenta AI w
.claude/skills/do pracy nad repo: dodawanie locali, sprawdzanie alignmentu dokumentacji, site-sweepy, tłumaczenia i generowanie przewodników aktualizacji.
Pełny changelog
Każda zmiana ze swoją kategorią: CHANGELOG.md.