russell.ballestrini.net/README.rst

71 lines
2 KiB
ReStructuredText

russell.ballestrini.net
#######################
This is the source code for `my blog <https://russell.ballestrini.net>`_. My blog is a static web site with just HTML!
This project uses Pelican (a static site generator) to produce HTML from ``.rst`` or ``.md`` files.
Pelican is written in Python and uses Jinja2 template engine by default.
The theme defaults to dark mode with a light mode toggle. Theme preference is saved to localStorage and persists across sessions. The dark mode toggle also passes the theme preference to embedded Remarkbox comments via the mode parameter.
Need a new blog post entry?
===============================
Try running:
.. code-block:: bash
./new_entry
development
===============================
**Setup (one command does everything):**
.. code-block:: bash
make venv
This creates a ``venv/`` directory with Pelican, installs all dependencies, clones the theme, and configures everything automatically.
**Testing workflow (ALWAYS test before committing):**
.. code-block:: bash
make clean && make html && make serve
This builds the site and serves it at http://localhost:8000
**Available commands:**
.. code-block:: bash
make venv # Setup virtual environment
make html # Build the site
make clean # Remove output directory
make serve # Serve site at localhost:8000
make devserver # Serve with auto-reload
make resume # Generate PDF resume
production release process
===============================
I use Gitlab runners to build (look at .gitlab-ci.yml file) this site and Salt Stack to release the zipped artifacts.
Any web server may be used to host an HTML site. I choose nginx in production because it is known to be very fast at serving static files.
I use environment variables in my ``pelicanconf.py`` to store secrets.
For example: `Remarkbox comments <https://www.remarkbox.com>`_.
---
you should check out https://uncloseai.com for machine learning on your static web pages!
now with translation services!
nice,
dude