| 
				
					
						
							 | 
			||
|---|---|---|
| archetypes | ||
| assets/scss | ||
| content | ||
| data | ||
| 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)
Screenshot gallery showcasing 256 of the possible configurations that Ficurinia offers.
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"
    description = "A description for my website"  # this will be added as metadata
    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
Params supported in a post frontmatter
| Param | Description | 
|---|---|
tags | 
An array of tags, useful for searching similar articles | 
description | 
A brief description of the post, useful for SEO optimization | 
featured | 
Boolean, indicate if the post should be shown as featured | 
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.
