summaryrefslogtreecommitdiff
path: root/README.md
blob: c407e527883d81a796ba5e239a0baf2cd17caa30 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# ☠︎ *Venin*

> [!warning]
> This theme is only meant for [my personal website](https://www.geedea.pro/). You're free to use this under MIT license but you should be warned: 1) it may contain **awkward solutions, hard-coded values, and peculiar use cases**; 2) while feature-rich, not everything is configurable; 3) you will **need to code your own build script** (referrence [this Babashka script](https://src.eltr.ac/eltrac/geedeapro/src/branch/master/build.clj)) and make sure you run pre-build and post-build [scripts](build.clj) of this theme.
>
> In short, **don't use this unless you're experienced with Hugo and willing to get your hands dirty with my source code**. Also, feel free to create a fork that's more user-friendly.

[Demo (English)](https://www.geedea.pro/en) | [演示(中文)](https://www.geedea.pro/)

## Prerequisites

- [Hugo](https://gohugo.io/) v0.161+
- [PNPM](https://pnpm.io/)
- [Babashka](https://babashka.org/), unless you write your own [build script](build.clj)

## Usage

1. Add this theme as a submodule.
    ```sh
    git submodule add https://src.eltr.ac/eltrac/hugo-theme-venin.git themes/venin
    ```
2. In `hugo.toml` or wherever your config is, put `theme = 'venin'`.
3. Create a build script, use whatever scripting language you like (Bash, Babashka...). Make sure you:
    1. Run `bb themes/venin/build.clj pre-build` before Hugo
    2. Run `bb themes/venin/build.clj post-build` after Hugo
4. Run this build script. This should build the theme and your site. Remember to configure your PaaS provider or CI/CD workflow to use this script.

If build fails, chances are that you're missing some important configuration. See [configuration](#configuration).

## Configuration

See [my configuration files](https://src.eltr.ac/eltrac/geedeapro/src/branch/master/config/_default).

## The Name

*Venin* is French for "Venom".