PyLadies Berlin website is using Pelican to generate HTML from articles in markdown.
It is deployed in GitHub pages under https://berlin.pyladies.com domain.
This website is inspired by https://elections.pyladies.com/ and is using the same base pelican theme. The code of that website can be found https://github.com/pyladies/pyladies-elections-website
|__ content
__ pelican-plugins
__ pelican-fh5co-marble # theme
__ pelicanconf.py # settings
__ publishconf.py # deployment settings
Website content in restructured text articles and images that are getting rendered to the main HTML website pages.
Submodule pointing to pelican plugins repository.
NOTE: Plugins are gradually moved to pip dependencies. If
i18n_subsites
moves over this dependency will not be necessary any more.
Pelican theme. It points to a fork of PyLadies Berlin of the base theme.
Here are all the necessary settings for Pelican. The upper case variables are passed when rendering to all templates of the theme.
Settings used by GitHub Action to build the website (see ..github/workflows/deploy-dh-pages.yml)
⚠️ Follow the command below to get the repository with the submodules otherwise it will not render correctly!
git clone --recurse-submodules [email protected]:PyLadiesBerlin/PyLadiesBerlin.github.io.git
# For git < 2.11 change `--recurse-submodules` by `--recursive`.
Use this command if the theme repository or the plugin in used has been updated.
git submodule update
python3 -m venv .env
source .env/bin/activate
pip install -r requirements.txt
pelican content
pelican --listen
or for faster changes use:
pelican --autoreload --listen
Open http://localhost:8000 in your browser.
Make sure you fork this repository, and clone your own version of the repository to submit a Pull-request.
New pages will show up automatically in the left menu.
- Page content in reStructuredText
format under
content/pages
in both languages. - Images like in
meetups.rst
, withfloat-left
andfloat-right
possibilities. - Title icons can be found in the icomoon website
and then checked in the
pelican-fh5co-marble/static/css/icomoon.css
to find the exact icon name.
This page is produced by the theme, the top part is controlled by pelicanconf
HERO
variable.
Consider reading about Pelican themes.
The used theme is under pelican-fh5co-marble
submodule. Locally this appears
as a directory and development can be done directly from here. Kind of, follow
the steps below:
- Make changes in the theme folder locally to see the result
- Commit the changes to the upstream submodule repository
- Update this repository to point to the latest theme commit
In case your plugin directories is empty, check with:
ls pelican-plugin
Try to download the git repository again with the following command:
git submodule update --init --recursive