5
.firebaserc
Normal file
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
"projects": {
|
||||
"default": "blowfish-21fff"
|
||||
}
|
||||
}
|
35
.github/workflows/firebase-preview.yml
vendored
Normal file
|
@ -0,0 +1,35 @@
|
|||
name: Deploy Preview to Firebase
|
||||
'on': pull_request
|
||||
jobs:
|
||||
build_and_preview:
|
||||
if: '${{ github.event.pull_request.head.repo.full_name == github.repository }}'
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
- name: Hugo setup
|
||||
uses: peaceiris/actions-hugo@v2.4.12
|
||||
env:
|
||||
ACTIONS_ALLOW_UNSECURE_COMMANDS: 'true'
|
||||
|
||||
- name: Check out code into the Go module directory
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: true # Fetch Hugo themes (true OR recursive)
|
||||
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
|
||||
|
||||
- name: Build with Hugo
|
||||
env:
|
||||
# For maximum backward compatibility with Hugo modules
|
||||
HUGO_ENVIRONMENT: production
|
||||
HUGO_ENV: production
|
||||
run: |
|
||||
hugo --minify -s exampleSite --themesDir ../.. -d ../public --baseURL https://blowfish.page
|
||||
|
||||
- name: Deploy preview
|
||||
uses: FirebaseExtended/action-hosting-deploy@v0
|
||||
with:
|
||||
repoToken: '${{ secrets.GITHUB_TOKEN }}'
|
||||
firebaseServiceAccount: '${{ secrets.FIREBASE_SERVICE_ACCOUNT_BLOWFISH_21FFF }}'
|
||||
expires: 30d
|
||||
channelId: preview
|
||||
projectId: blowfish-21fff
|
36
.github/workflows/firebase-production.yml
vendored
Normal file
|
@ -0,0 +1,36 @@
|
|||
name: Deploy Production to Firebase
|
||||
'on':
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
jobs:
|
||||
build_and_deploy:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
- name: Hugo setup
|
||||
uses: peaceiris/actions-hugo@v2.4.12
|
||||
env:
|
||||
ACTIONS_ALLOW_UNSECURE_COMMANDS: 'true'
|
||||
|
||||
- name: Check out code into the Go module directory
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: true # Fetch Hugo themes (true OR recursive)
|
||||
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
|
||||
|
||||
- name: Build with Hugo
|
||||
env:
|
||||
# For maximum backward compatibility with Hugo modules
|
||||
HUGO_ENVIRONMENT: production
|
||||
HUGO_ENV: production
|
||||
run: |
|
||||
hugo --minify -s exampleSite --themesDir ../.. -d ../public --baseURL https://blowfish.page
|
||||
|
||||
- name: Deploy Production
|
||||
uses: FirebaseExtended/action-hosting-deploy@v0
|
||||
with:
|
||||
repoToken: '${{ secrets.GITHUB_TOKEN }}'
|
||||
firebaseServiceAccount: '${{ secrets.FIREBASE_SERVICE_ACCOUNT_BLOWFISH_21FFF }}'
|
||||
channelId: live
|
||||
projectId: blowfish-21fff
|
14
README.md
|
@ -11,8 +11,8 @@
|
|||
|
||||
Blowfish is designed to be a powerful, lightweight theme for [Hugo](https://gohugo.io). It's built using Tailwind CSS with a clean and minimalist design that prioritises to your content. The theme is a fork of [Congo](https://github.com/jpanther/congo).
|
||||
|
||||
🌏 [Demo site](https://nunocoracao.github.io/blowfish/)
|
||||
📑 [Theme documentation](https://nunocoracao.github.io/blowfish/docs/)
|
||||
🌏 [Demo site](https://blowfish.page/)
|
||||
📑 [Theme documentation](https://blowfish.page/docs/)
|
||||
💎 [Merch Store](http://tee.pub/lic/qwSlWVBL5zc)
|
||||
🐛 [Bug reports & issues](https://github.com/nunocoracao/blowfish/issues)
|
||||
💡 [Questions & feature requests](https://github.com/nunocoracao/blowfish/discussions)
|
||||
|
@ -54,7 +54,7 @@ Blowfish is designed to be a powerful, lightweight theme for [Hugo](https://gohu
|
|||
|
||||
## Documentation
|
||||
|
||||
Blowfish has [extensive documentation](https://nunocoracao.github.io/blowfish/docs/) that covers all aspects of the theme. Be sure to [read the docs](https://nunocoracao.github.io/blowfish/docs/) to learn more about how to use the theme and its features.
|
||||
Blowfish has [extensive documentation](https://blowfish.page/docs/) that covers all aspects of the theme. Be sure to [read the docs](https://blowfish.page/docs/) to learn more about how to use the theme and its features.
|
||||
|
||||
---
|
||||
|
||||
|
@ -62,7 +62,7 @@ Blowfish has [extensive documentation](https://nunocoracao.github.io/blowfish/do
|
|||
|
||||
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](https://nunocoracao.github.io/blowfish/docs/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.
|
||||
Detailed instructions for each method can be found in the [Installation](https://blowfish.page/docs/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 git submodules
|
||||
|
||||
|
@ -84,7 +84,7 @@ Detailed instructions for each method can be found in the [Installation](https:/
|
|||
|
||||
You will find these theme config files in the Hugo cache directory, or [download a copy](https://minhaskamal.github.io/DownGit/#/home?url=https://github.com/nunocoracao/blowfish/tree/main/config/_default) from GitHub.
|
||||
|
||||
4. Follow the [Getting Started](https://nunocoracao.github.io/blowfish/docs/getting-started/) instructions to configure your website.
|
||||
4. Follow the [Getting Started](https://blowfish.page/docs/getting-started/) instructions to configure your website.
|
||||
|
||||
### Quick start using Hugo
|
||||
|
||||
|
@ -111,13 +111,13 @@ Detailed instructions for each method can be found in the [Installation](https:/
|
|||
|
||||
You will find these theme config files in the Hugo cache directory, or [download a copy](https://minhaskamal.github.io/DownGit/#/home?url=https://github.com/nunocoracao/blowfish/tree/main/config/_default) from GitHub.
|
||||
|
||||
5. Follow the [Getting Started](https://nunocoracao.github.io/blowfish/docs/getting-started/) instructions to configure your website.
|
||||
5. Follow the [Getting Started](https://blowfish.page/docs/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](https://nunocoracao.github.io/blowfish/docs/installation/#installing-updates) are available in the docs.
|
||||
Detailed [update instructions](https://blowfish.page/docs/installation/#installing-updates) are available in the docs.
|
||||
|
||||
---
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# -- Site Configuration --
|
||||
# Refer to the theme docs for more details about each of these parameters.
|
||||
# https://nunocoracao.github.io/blowfish/docs/getting-started/
|
||||
# https://blowfish.page/docs/getting-started/
|
||||
|
||||
# theme = "blowfish"
|
||||
# baseURL = "https://your_domain.com/"
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
# customise the display of your website.
|
||||
#
|
||||
# Refer to the theme docs for more details about each of these parameters.
|
||||
# https://nunocoracao.github.io/blowfish/docs/configuration/#theme-parameters
|
||||
# https://blowfish.page/docs/configuration/#theme-parameters
|
||||
|
||||
colorScheme = "blowfish"
|
||||
defaultAppearance = "light" # valid options: light or dark
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# -- Site Configuration --
|
||||
# Refer to the theme docs for more details about each of these parameters.
|
||||
# https://nunocoracao.github.io/blowfish/docs/getting-started/
|
||||
# https://blowfish.page/docs/getting-started/
|
||||
|
||||
theme = "blowfish"
|
||||
baseURL = "https://nunocoracao.github.io/blowfish"
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
# customise the display of your website.
|
||||
#
|
||||
# Refer to the theme docs for more details about each of these parameters.
|
||||
# https://nunocoracao.github.io/blowfish/docs/configuration/#theme-parameters
|
||||
# https://blowfish.page/docs/configuration/#theme-parameters
|
||||
|
||||
colorScheme = "blowfish"
|
||||
defaultAppearance = "dark" # valid options: light or dark
|
||||
|
|
|
@ -31,6 +31,24 @@ For example, if you wanted to override the main article template in Blowfish, yo
|
|||
|
||||
As long as you follow this simple practice, you will always be able to update the theme (or test different theme versions) without worrying that you will lose any of your custom changes.
|
||||
|
||||
## Change image optimization settings
|
||||
|
||||
Hugo has various builtin methods to resize, crop and optimize images.
|
||||
|
||||
As an example - in `layouts/partials/article-link-card.html`, you have the following code:
|
||||
|
||||
```go
|
||||
{{ with .Fill "600x600" }}
|
||||
<div class="w-full thumbnail_card nozoom" style="background-image:url({{ .RelPermalink }});"></div>
|
||||
{{ end }}
|
||||
```
|
||||
|
||||
The default behavior of Hugo here is to use Smartcrop to dynamically set the anchor point (crop placement) on the image and resize it to fill 600x600px.
|
||||
|
||||
It is worth noting here that default image configurations such as [anchor point](https://gohugo.io/content-management/image-processing/#anchor) can also be set in your [site configuration](https://gohugo.io/content-management/image-processing/#processing-options) as well as in the template itself.
|
||||
|
||||
See the [Hugo docs on image processing](https://gohugo.io/content-management/image-processing/#image-processing-methods) for more info.
|
||||
|
||||
## Colour schemes
|
||||
|
||||
Blowfish ships with a number of colour schemes out of the box. To change the basic colour scheme, you can set the `colorScheme` theme parameter. Refer to the [Getting Started]({{< ref "getting-started#colour-schemes" >}}) section to learn more about the built-in schemes.
|
||||
|
@ -59,7 +77,7 @@ The `custom.css` file will be minified by Hugo and loaded automatically after al
|
|||
|
||||
### Using additional fonts
|
||||
|
||||
Blowfish allows you to easily change the font for your site. After creating a `custom.css` file in your project's `assets/css/` folder, place you font file inside a `fonts` folder withing the `static` root folder.
|
||||
Blowfish allows you to easily change the font for your site. After creating a `custom.css` file in your project's `assets/css/` folder, place you font file inside a `fonts` folder withing the `static` root folder.
|
||||
|
||||
```shell
|
||||
.
|
||||
|
@ -86,8 +104,6 @@ html {
|
|||
}
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Adjusting the font size
|
||||
|
||||
Changing the font size of your website is one example of overriding the default stylesheet. Blowfish makes this simple as it uses scaled font sizes throughout the theme which are derived from the base HTML font size. By default, Tailwind sets the default size to `12pt`, but it can be changed to whatever value you prefer.
|
||||
|
|
Before Width: | Height: | Size: 3.6 MiB After Width: | Height: | Size: 3.6 MiB |
Before Width: | Height: | Size: 3.5 MiB After Width: | Height: | Size: 3.5 MiB |
Before Width: | Height: | Size: 4.2 MiB After Width: | Height: | Size: 4.2 MiB |
Before Width: | Height: | Size: 1.4 MiB After Width: | Height: | Size: 1.4 MiB |
Before Width: | Height: | Size: 1.3 MiB After Width: | Height: | Size: 1.3 MiB |
Before Width: | Height: | Size: 1.6 MiB After Width: | Height: | Size: 1.6 MiB |
|
@ -17,7 +17,7 @@ The layout of the homepage is controlled by the `homepage.layout` setting in the
|
|||
|
||||
The default layout is the profile layout, which is great for personal websites and blogs. It puts the author's details front and centre by providing an image and links to social profiles.
|
||||
|
||||
<img class="thumbnailshadow" src="home-profile.png"/>
|
||||
<img class="thumbnailshadow" src="img/home-profile.png"/>
|
||||
|
||||
The author information is provided in the languages configuration file. Refer to the [Getting Started]({{< ref "getting-started" >}}) and [Language Configuration]({{< ref "configuration##language-and-i18n" >}}) sections for parameter details.
|
||||
|
||||
|
@ -29,7 +29,7 @@ To enable the Profile layout, set `homepage.layout = "profile"` in the `params.t
|
|||
|
||||
The page layout is simply a normal content page that displays your Markdown content. It's great for static websites and provides a lot of flexibility.
|
||||
|
||||
<img class="thumbnailshadow" src="home-page.png"/>
|
||||
<img class="thumbnailshadow" src="img/home-page.png"/>
|
||||
|
||||
To enable the Page layout, set `homepage.layout = "page"` in the `params.toml` configuration file.
|
||||
|
||||
|
@ -37,7 +37,7 @@ To enable the Page layout, set `homepage.layout = "page"` in the `params.toml` c
|
|||
|
||||
The hero layout brings together ideas from the profile and card layouts. This one not only displays information on the author of the site but it also loads your markdown beneath it.
|
||||
|
||||
<img class="thumbnailshadow" src="home-hero.png"/>
|
||||
<img class="thumbnailshadow" src="img/home-hero.png"/>
|
||||
|
||||
To enable the Hero layout, set `homepage.layout = "hero"` and `homepage.homepageImage` in the `params.toml` configuration file.
|
||||
|
||||
|
@ -45,7 +45,7 @@ To enable the Hero layout, set `homepage.layout = "hero"` and `homepage.homepage
|
|||
|
||||
The background layout is a more smooth version of the hero layout. As in the Hero layout, this one also displays both information on the author of the site and loads your markdown beneath it.
|
||||
|
||||
<img class="thumbnailshadow" src="home-background.png"/>
|
||||
<img class="thumbnailshadow" src="img/home-background.png"/>
|
||||
|
||||
To enable the Background layout, set `homepage.layout = "background"` and `homepage.homepageImage` in the `params.toml` configuration file.
|
||||
|
||||
|
@ -53,7 +53,7 @@ To enable the Background layout, set `homepage.layout = "background"` and `homep
|
|||
|
||||
The card layout is an extension of the page layout. It provides the same level of flexivbility by also displaying your markdown content and adds a card image to display visual content.
|
||||
|
||||
<img class="thumbnailshadow" src="home-card.png"/>
|
||||
<img class="thumbnailshadow" src="img/home-card.png"/>
|
||||
|
||||
To enable the Card layout, set `homepage.layout = "card"` and `homepage.homepageImage` in the `params.toml` configuration file.
|
||||
|
||||
|
@ -74,7 +74,7 @@ As an example, the [homepage]({{< ref "/" >}}) on this site uses the custom layo
|
|||
|
||||
All homepage layouts have the option of displaying recent articles below the main page content. To enable this, simply set the `homepage.showRecent` setting to `true` in the `params.toml` configuration file.
|
||||
|
||||
<img class="thumbnailshadow" src="home-list.png"/>
|
||||
<img class="thumbnailshadow" src="img/home-list.png"/>
|
||||
|
||||
The articles listed in this section are derived from the `mainSections` setting which allows for whatever content types you are using on your website. For instance, if you had content sections for _posts_ and _projects_ you could set this setting to `["posts", "projects"]` and all the articles in these two sections would be used to populate the recent list. The theme expects this setting to be an array so if you only use one section for all your content, you should set this accordingly: `["blog"]`.
|
||||
|
||||
|
|
After Width: | Height: | Size: 328 KiB |
After Width: | Height: | Size: 497 KiB |
|
@ -13,4 +13,4 @@
|
|||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
|
@ -36,7 +36,7 @@
|
|||
href="https://gohugo.io/" target="_blank" rel="noopener noreferrer">Hugo</a>`
|
||||
}}
|
||||
{{ $blowfish := printf `<a class="hover:underline hover:decoration-primary-400 hover:text-primary-500"
|
||||
href="https://nunocoracao.github.io/blowfish/" target="_blank" rel="noopener noreferrer">Blowfish</a>` }}
|
||||
href="https://blowfish.page/" target="_blank" rel="noopener noreferrer">Blowfish</a>` }}
|
||||
{{ i18n "footer.powered_by" (dict "Hugo" $hugo "Theme" $blowfish) | safeHTML }}
|
||||
</p>
|
||||
{{ end }}
|
||||
|
|
|
@ -6,7 +6,7 @@ licenselink = "https://github.com/nunocoracao/blowfish/blob/main/LICENSE"
|
|||
description = "A powerful, lightweight theme for Hugo built with Tailwind CSS."
|
||||
|
||||
homepage = "https://github.com/nunocoracao/blowfish/"
|
||||
demosite = "https://nunocoracao.github.io/blowfish/"
|
||||
demosite = "https://blowfish.page/"
|
||||
|
||||
tags = ["blog", "minimal", "responsive", "dark mode", "dark", "light", "tailwind", "personal"]
|
||||
features = ["syntax highlighting", "dark mode", "emoji", "firebase", "views"]
|
||||
|
|