nunocoracao / blowfish

Personal Website & Blog Theme for Hugo
https://blowfish.page
MIT License
1.53k stars 420 forks source link
blog blog-theme blowfish feature-rich hugo hugo-blog-theme hugo-theme mit-license responsive theme well-documented

English | 简体中文

Blowfish

Deploy Production to Firebase Deploy Production to GitHub pages Minimum Hugo Version GitHub Blowfish code-size

Blowfish is designed to be a powerful, lightweight theme for Hugo. It's built using Tailwind CSS with a clean and minimalist design that prioritises to your content.

blowfish screenshot

🌏 Demo site
📑 Theme documentation
💎 Merch Store
🐛 Bug reports & issues
💡 Questions & feature requests

Buy Me A Coffee

Features


blowfish logo

Documentation

Blowfish has extensive documentation that covers all aspects of the theme. Be sure to read the docs to learn more about how to use the theme and its features.


Installation

Blowfish supports several installation methods - as a git submodule, a Hugo Module, or as a completely manual install.

Detailed instructions for each method can be found in the Installation docs. You should consult the documentation for the simplest setup experience. Below is a quick start guide using submodules if you are using git, or Hugo modules if you're already confident installing Hugo themes.

Quick start using Blowfish Tools

Note: Ensure you have Node.js, Git, Go and Hugo installed, and that you have created a new Hugo project before proceeding.

We just launched a new CLI tool to help you get started with Blowfish. It will create a new Hugo project, install the theme and set up the theme configuration files for you. It's still in beta so please report any issues you find.

Install the CLI tool globally using npm (or other package manager):

npm i -g blowfish-tools

Then run the command blowfish-tools to start an interactive run which will guide you through creation and configuration use-cases.

blowfish-tools

You can also run the command blowfish-tools new to create a new Hugo project and install the theme in one go. Check the CLI help for more information.

blowfish-tools new mynewsite

Quick start using git submodules

Note: Ensure you have Git, Go, and Hugo installed, and that you have created a new Hugo project before proceeding.

  1. From your project directory, initialise git:

    git init
  2. Configure Blowfish as a git submodule:

    git submodule add -b main https://github.com/nunocoracao/blowfish.git themes/blowfish
  3. In the root folder of your website, delete the config.toml file that was generated by Hugo. Copy the *.toml config files from the theme into your config/_default/ folder.

    You will find these theme config files in the Hugo cache directory, or download a copy from GitHub.

  4. Follow the Getting Started instructions to configure your website.

Quick start using Hugo

Note: Ensure you have Go and Hugo installed, and that you have created a new Hugo project before proceeding.

  1. From your project directory, initialise Hugo Modules:

    hugo mod init github.com/<username>/<repo-name>
  2. Create config/_default/module.toml and add the following:

    [[imports]]
    path = "github.com/nunocoracao/blowfish/v2"
  3. Start your server using hugo server and the theme will be downloaded automatically.

  4. In the root folder of your website, delete the hugo.toml file that was generated by Hugo. Copy the *.toml config files from the theme into your config/_default/ folder.

    Note: Do not overwrite the module.toml file you created above!

    You will find these theme config files in the Hugo cache directory, or download a copy from GitHub.

  5. Follow the Getting Started instructions to configure your website.

Installing theme updates

As new releases are posted, you can update the theme using Hugo. Simply run hugo mod get -u from your project directory and the theme will automatically update to the latest release.

Detailed update instructions are available in the docs.


Contributing

Blowfish is expected to evolve over time. I intend to keep adding features and making changes as required.

Feel free to get in touch with any issues or suggestions for new features you'd like to see.

If you're able to fix a bug or implement a new feature, I welcome PRs for this purpose. Learn more in the contributing guidelines.


Stargazers over time

Stargazers over time

Mastodon