This project should be a portfolio theme for HUGO, the static web site generator.
 
 
 
Go to file
iGor milhit 264fc3480e
layouts: allow lists to be overwritten
- Replace fixed spacing by the pico variable, and improve the horizontal
  spacing of lists of posts (sections).
- Place the list of last posts of the home page on a separate partial.
  Thus, this partial is easier to overwrite in the user layout
  directory.

Co-Authored-by: iGor milhit <igor@milhit.ch>
2024-12-08 08:55:51 +01:00
archetypes theme: initialize new hugo theme 2019-03-04 06:58:25 +01:00
assets layouts: allow lists to be overwritten 2024-12-08 08:55:51 +01:00
i18n layout: display the 5 last post on homepage 2024-11-01 15:04:23 +01:00
layouts layouts: allow lists to be overwritten 2024-12-08 08:55:51 +01:00
screenshots theme: improve spacings 2024-10-20 20:36:41 +02:00
static fonts: serve woff2 instead of ttf 2024-11-02 08:36:36 +01:00
.auto-changelog i18n: extract, translate strings to be translated 2022-11-27 12:15:46 +01:00
.gitignore style: add a stylesheet for printing 2021-11-04 18:24:16 +01:00
CHANGELOG.md theme: improve spacings 2024-10-20 20:36:41 +02:00
LICENSE theme: initialize new hugo theme 2019-03-04 06:58:25 +01:00
README.md layout: display the 5 last post on homepage 2024-11-01 15:04:23 +01:00
package-lock.json picocss: implement the pico css framework 2024-10-19 14:59:06 +02:00
package.json picocss: implement the pico css framework 2024-10-19 14:59:06 +02:00
theme.toml picocss: implement the pico css framework 2024-10-19 14:59:06 +02:00
yarn-error.log dependencies: add picocss as a dependency 2024-09-02 08:13:54 +02:00
yarn.lock picocss: implement the pico css framework 2024-10-19 14:59:06 +02:00

README.md

portfoliGor

Yet another HUGO portfolio theme, that I'm writing to my own purpose on https://igor.milhit.ch, published with the regular MIT license.

It displays on the front page a personal and professional description, and ways to contact the person. It has a blog section too.

The HTML <head> has a metadata section to expose metadata that are useful for reference manager as Zotero (in Dublin Core) or to social media (see below).

As the release version can tell, this theme is still in development and misses lot of things [see the opened issues].

You can install it as the HUGO documentation recommends.

Screenshot

Configuration

List of last posts on the homepage

If you want the 5 last posts being listed on the homepage, add the home_post_list to the configuration. Set it to true.

Personal and professional description

The homepage displays, if it exists, the content of the main index markdown file that could be placed at the root of the content directory [HUGO's documentation].

There's also three sections that can be displayed:

  • The online presence.
  • The personal contacts.
  • The professional contacts.

It depends on the data provided by the site configuration, in the params section. Below a comprehensive example:

[params]

    # Professional contact data
    [params.contactsPro]
    address = ""
    phone = "[as-used-by-a-phone]"
    mobile = "[as-used-by-a-phone]"
    email = ""
    cv = "[file-added-in-static-directory]"
    publickey = "[file-added-in-static-directory]"
    fingerprint = ""

    # Personal contact data
    [params.contactsPriv]
    address = ""
    phone = "[as-used-by-a-phone]"
    mobile = "[as-used-by-a-phone]"
    email = ""
    publickey = "[file-added-in-static-directory]"
    fingerprint = ""
    xmpp = "[handle]"

    # Web accounts
    [params.online]
    github = "[username]"
    framagit = "[username]"
    mastodon = "[URL]"
    twitter = "[username]"
    keybase = "[username]"
    wikipedia = "[french-site-username]"
    openstreetmap = "[username]"
    discogs = "[username]"

Layout configuration

  • Add layout: verse to the front header of a specific content to improve format for text in verse. Verse should be separated by a line break, strophes are paragraphs.
  • Add layout: static to the front header of a static page, thus preventing to display the post metadata such as the publication date.

Date management

You should set enableGitInfo to True, as it is used by the post metadata display for the last modification date, and in the footer to provide a link to the last commit modifying the content (still hard coded though, #14).

The publication date uses the date field of the front matter, that should be automatically set by the hugo new command. If the content is published later, you can add the publishdate field manually, and it will override the date data.

All further modification dates should be provided by the git metadata. But you can also set manually the lastmod date in the front matter.

To make it work, in the site configuration file, you should configure the date management as below:

[frontmatter]
date = ["date", "publishDate"]
lastmod = [":git", "lastmod"]

Social media metadata

An image for the website can be defined in the site configuration. Place an image optimized for the web, in the 1200 × 600 pixels resolution, in the static/images/ directory. Then provide in the site configuration it's file name and image description (max 80 chars, with a trailing dot):

[params]

    Description = "[Small website description]"
    Image = "mySite.jpg"
    ImageDescription = "[Alternate text]"

For each content (blog post), a social media image can be defined in the front matter. The image have to be placed in the same directory (static/images/), same resolution. The frontmatter is as follow:

description: "[post-description]"
postimage: "[file-name.extension]"
postimagedescription: "[Alternate text]"

Changelog

The Changelog is described in CHANGELOG.md. It's generated by auto-changelog. The configuration is in .auto-changelog.

To generate it, use the following command:

yarn auto-changelog