048400e552 | ||
---|---|---|
archetypes | ||
assets/scss | ||
content | ||
images | ||
layouts | ||
resources/_gen/assets/scss/scss | ||
static | ||
LICENSE | ||
README.md | ||
theme.toml |
README.md
Ficurinia
A prickly blog theme for Hugo
Demo
Code for the demo website (really my personal website)
Customization
Configuration
These are some parameters you can use in your config.toml
to customize Ficurinia:
baseURL = "https://example.com/"
theme = "hugo-ficurinia"
title = "My nice blog"
# this will be included in the footer after the current year the site is last
# built, followed by the (c) symbol
# you can use markdown inside this field
copyright = "Some copyright notice - [my license](https://example.com/license)"
paginate = 5 # number of articles per page in the index
summaryLength = 70 # number of words for article summaries
[params]
author = "Gabriele Musco"
logo = "/images/mylogo.png"
favicon = "/images/myfavicon.png"
showTags = true # show the Tags menu item; default true
showRss = true # show the link for the RSS feed; default true
imageInArticlePreview = false # show images in article preview; default false
navtype = "standard" # changes the style of the pagination, available styles are: "standard", "circles"
fontFamily = "JetBrains Mono" # changes the font, default "JetBrains Mono"
monospaceFontFamily = "JetBrains Mono" # changes the monospace font for code, default "JetBrains Mono"
contentWidth = "1000px" # maximum width of the site content, css syntax
discreteCards = false # enable discrete card style; default false
gridView = false # show post list as a grid. goes well with discreteCards
highlightBgColor = "#34363b" # card and circle navigation background color for discrete card mode
enableSearch = true # enable search page
searchbarEverywhere = true # if the searchbar should be shown in every page; requires enableSearch
searchMenuLink = false # add a search link to the navigation menu; requires enableSearch
enableFeatured = false # enable a particular view for articles marked as featured (featured: true in the article frontmatter)
# enable comments support with commento using the script from your server
commento = "https://example.com/js/commento.js"
# enable analytics using Plausible
plausibleScriptUrl = "https://something.com/..."
plausibleDomain = "example.com"
# WARNING: deprecated! Use [[menu.icons]] instead, look below
# links = [
# ["GitLab", "https://gitlab.com/gabmus"],
# ["GNOME", "https://gitlab.gnome.org/gabmus"],
# ["YouTube", "https://youtube.com/TechPillsNet"]
# ]
# you can customize all of the colors in this theme
# the values shown are the defaults
backgroundColor = "#242629"
foregroundColor = "white"
dimForegroundColor = "#bababa"
strokeColor = "#4f4f4f"
accentColor = "#db5793"
# redirect to baseURL if current URL host doesn't match
# useful if deploying in gitlab pages with custom domain and don't want
# the username.gitlab.io/website url to persist
# this requires you to set baseURL (see above)
forceRedirect = false
infiniteScrolling = false # activates infinite scrolling instead of regular pagination
enableFooterColumns = false # activates footer columns, as described below
# related articles will be selected randomly based on tags and shown at
# the bottom of the article, after the comments
enableRelatedArticles = false
relatedArticlesNum = 2 # how many related articles to show
randomRelated = false # sorts related articles in random order (randomized at built time)
[menu]
# these links will be added to the main navigation menu, sorted by weight
# other elements in this menu are added automatically from the "pages" folder
# the folder it will look into can be customized with the pages variable
# in params above
[[menu.main]]
identifier = "about"
name = "About"
url = "/about/"
weight = 10
# these links (menu.icons) will be added as icon links below the main nav
[[menu.icons]]
identifier = "gitlab"
name = "GitLab"
url = "https://gitlab.com/gabmus"
weight = 10
[[menu.icons]]
identifier = "gnome"
name = "GNOME GitLab"
url = "https://gitlab.gnome.org/gabmus"
weight = 20
# this section is necessary if you want infinite scrolling
# it allows to output the article list as paged JSON so that "pages" can be retrieved via javascript
[outputs]
home = ["HTML", "JSON"]
Supported icons
For the [[menu.icons]]
menu. They match identifier, name and url can be whatever. Here's a list of supported identifiers:
- github
- gitlab
- gnome
- mastodon
- matrix
- peertube
- phone
- pleroma
- rss
- steam
- telegram
- xmpp
- youtube
Footer columns
You can add various columns of links in the footer using the data/footer_columns.yml
file.
Following is an example configuration:
- title: My other projects
links:
- title: HydraPaper
link: https://hydrapaper.gabmus.org
- title: Ada UI
link: https://gitlab.com/gabmus/ada-ui
- title: About me
links:
- title: My personal website
link: https://gabmus.org
- title: My GitLab
link: https://gitlab.com/gabmus
- title: My GNOME GitLab
link: https://gitlab.gnome.org/gabmus
Inject custom content
Ficurinia supports injecting custom content into the theme. There are several files you can create in layouts/partials/inject
that will be included inside the theme in different places.
Partial | Placement |
---|---|
layouts/partials/inject/body.html |
Before closing the body tag |
layouts/partials/inject/content-after.html |
After a post or page content |
layouts/partials/inject/content-before.html |
Before a post or page content |
layouts/partials/inject/footer.html |
At the beginning of the footer |
layouts/partials/inject/head.html |
Before closing the head tag |
layouts/partials/inject/header-after.html |
Before closing the header |
layouts/partials/inject/header-before.html |
At the beginning of the header |
Does Ficurinia mean anything?
It's Sicilian for Indian fig, also known as prickly pear cactus.