Aktywne Wpisy

adrninistrator +203
#smierc #zgon #dziadziustrumenka #ozzyosbourne #muzyka
22 lipca 2025 Ozzy Osbourne zmarł w wieku 76 lat [*] każden jeden plus to jedna wirtualna świeczka więcej. Łączymy się w modlitwie z rodziną zmarłego
22 lipca 2025 Ozzy Osbourne zmarł w wieku 76 lat [*] każden jeden plus to jedna wirtualna świeczka więcej. Łączymy się w modlitwie z rodziną zmarłego
źródło: Ozzy-Osbourne-Save-The-Chimps-1536x864
PobierzŁączysz się w modlitwie?
- 🙏 52.9% (440)
- 🤮 47.1% (391)

johnshepard2000 +60
źródło: temp_file7130262203276149002
Pobierz




Ostatnio znudził mi się mój szablon na blogu a sam silnik, którego używałem, wydawał się dla mnie za duży. Potrzebowałem czegoś o wiele prostszego. Prostego szablonu, prostego silnika do renderowania. Niestety teraz mamy taką modę, że z małego landinga page developerzy potrafią zrobić 30 mb SPA, bo przecież wszędzie musi być react, trzysta bibliotek js i milion zdjęć. O ile react/vue/gatsby itd jest świetnym narzędziem i ma swoje zastosowania, to nie wszędzie powinno się go wciskać.
Cóż, zatem siadłem jednego wieczoru i parę godzin później powstał braindead - mój własny
braindead simple static site generator. Początkowa działająca wersja, mająca wszystkie potrzebne mi featury, zmieściła mi się w 100 linijkach kodu. Teraz troszkę dobudowałem i dodałem nieco komentarzy więc jest ich około 150, ale wciąż uważam to za niezły wynik jak na silnik dla mojego bloga, który wspiera markdown, kolorowanie składni, htmla, tabelki w markdownie i kilka innych rzeczy.Magia się tam nie dzieje żadna - Jinja, Markdown, Toml, Pygments i #python
Dependency management oczywiście poetry zamiast rakowe pipenva. Do tego type hinting, black, isort, bandit.
Szablon, którego używam waży jakieś 10KB, strona ładuje się jak pierun normalnie. Nie ma JSa. I to mi się podoba. W każdym razie - kod jest na repo, jakby się ktoś chciał pobawić, to zapraszam. Paczkę można ściągnąć z pypi
pip install braindead. Jak używać jest w pliku readme na repo. Demo na blogu https://grski.pl/Jak komuś mój szablon nie pasuje, to można swój własny napisać :D
Domyślny wygląda tak:
Default template of braindead
Ładowanie bez cache:
requests made if loading this template
W sumie chyba będę to trochę rozwijał po godzinach bo mam kilka pomysłów co tam jeszcze dobudować (todo.txt na repo)
Za niedługo pewnie skrobnę wpis o procesie tworzenia.
inb4 ktoś powie:
kod słaby, gdzie są klasy, co to za same funkcje, płaska struktura?tak tak, nie lubie obiektówki.#programowanie
Technologia użyta:
toml,
markdown
jinja2
pygments.
formatowanie:
black
isort.
flake8
autoflake
bandit
wersjonowanie:
bumpversion.
deps management & publishing: poetry
źródło: comment_1586712578OaENx3Ht06l7LqZpUquZhk.jpg
PobierzKomentarz usunięty przez autora
Wypuściłem wersje 0.2.6 - tam dodałem ostrzeżenie o takim zachowaniu + do backloga wpisałem live server automatyczny.