The Ari-web blog. https://blog.ari.lt/
Find a file
Ari Archer 6bda8e2fb3
update @ Sun Oct 29 17:54:19 EET 2023
Signed-off-by: Ari Archer <ari.web.xyz@gmail.com>
2023-10-29 17:54:19 +02:00
content update @ Sun Oct 29 00:03:22 EEST 2023 2023-10-29 00:03:22 +03:00
scripts update @ Sun Oct 29 17:54:19 EET 2023 2023-10-29 17:54:19 +02:00
.editorconfig init 2022-03-11 13:35:37 +02:00
.gitignore update @ Sun Oct 29 17:41:58 EET 2023 2023-10-29 17:41:58 +02:00
blog.json update @ Sun Oct 29 17:41:58 EET 2023 2023-10-29 17:41:58 +02:00
LICENSE update @ Sat 1 Oct 02:22:35 EEST 2022 2022-10-01 02:22:35 +03:00
netlify.toml update @ Fri Oct 6 21:56:06 EEST 2023 2023-10-06 21:56:06 +03:00
pyproject.toml total rewrite of the blogging system 2023-08-29 10:27:14 +03:00
README.md update @ Tue Oct 17 17:33:34 EEST 2023 2023-10-17 17:33:34 +03:00
requirements-extra.txt update @ Tue Oct 17 17:29:30 EEST 2023 2023-10-17 17:29:30 +03:00
requirements.txt update @ Sun Oct 8 07:37:55 EEST 2023 2023-10-08 07:37:55 +03:00
runtime.txt update @ Sat 5 Nov 20:05:57 EET 2022 2022-11-05 20:05:57 +02:00
tox.ini total rewrite of the blogging system 2023-08-29 10:27:14 +03:00

ari-web blogs

installing dependencies

$ python3 -m virtualenv venv
$ . venv/bin/activate
$ pip install -r requirements.txt

Or

$ python3 -m pip install --user -r requirements.txt

completions

  • bash
$ . completions/blog.bash

building

  • generate full-on static site
$ CI=1 ./scripts/blog static
  • only build blogs
$ CI=1 ./scripts/blog static

CI environment variable is optional, though setting it in a build/CI environment is good to save time on some operations that are useless in that context, for example sorting blogs.

CI can have any value.

the API

why ari-web blog manager

  • writer friendly -- uses markdown, keeps tracks of dates useful custom markdown extensions, support for editing, removal of posts,, and u can style ur blog the way you want it to b using css, easy build directory cleanup, support for custom fonts, locales, licenses, etc
  • reader friendly -- the blog posts are sorted from newest to oldest making it easy to get latest blog posts, they can also get a shortcut on their device as it has a manifest.json so they can open ur blog as an app, also support for an rss feed meaning ur users can subscribe to ur blog to get latest posts on their rss feeder app
  • writer-developer friendly -- the script is easily extensible by developers, markdown extensions, etc,, testing of each component using subcommands and a built-in testing http server
  • reader-developer friendly -- api access to latest blog posts and ur blog as a whole though blog.json, apis are hashed and minified
  • search engine optimization ( seo ) -- generator tries to follow best seo practices and adds a bunch of metadata not only in html but in other files too -- robots.txt, manifest.json, sitemap.xml, rss.xml and ofc the apis ( recents.json, recents_json_hash.txt, blog_json_hash.txt )
  • payload size -- generator generates minified content ( all apis, rss.xml, generated html of blog posts and home page, all css and fonts ) making it fast to load for readers
  • accessibility -- the blog generator follows best a11y practices making it easy for people with disabilities to read ur posts
  • google pagespeed optimized -- this metric shows us how accessible and fast our pages r and this generator tries to optimize for it
  • fast -- the generator uses fast libraries, data structures and threading, it doesnt import useless libraries in build time ( unless theyre pointless to exclude ), meaning its very quick to build ur blog into a full-blown static website
  • open source -- this generator and all of the content on it are licensed under gplv3 and the code and content are free to the public making it open source
  • overall pleasant experience to grow ur blog :)