2. Structure
Planted December 18, 2021
Understand the structure of the theme’s setup to create content for your website.
Theme’s content structure
.
├── ...
├── content # Hosts all Markdown content
│ ├── articles # Contains the list of markdown files for notes/posts
│ │ ├── article-1.md
│ │ ├── article-2.md
│ │ └── article-3.md
│ └── portfolio # List of portfolio projects or case studies
│ ├── project-1.md
│ └── project-2.md
├── data # Test files (alternatively `spec` or `tests`)
│ └── stack.json # Data used for rendering the list in Stack page
└── ...
Note that articles, portfolio and also stack pages require you to create _index.md inside of it. Refer the exampleSite in theme.
All of these sections are optional and you can decide not to utilize those layouts.
Random Articles
1. Theme Installation
Create a new hugo website or open your existing hugo site.
Add the theme to your hugo site Use as a git submodule:
git submodule add https://github.com/apvarun/digital-garden-hugo-theme.git themes/digitalgarden Clone the repository (one-off, updating the theme may be harder later):
git clone https://github.com/apvarun/digital-garden-hugo-theme.git themes/digitalgarden Setup Copy package.json, package-lock.json and tailwind.config.js files from the theme/digitalgarden folder to the root folder of your the website Run npm install to install required packages for theme Run npm i -g postcss-cli to use PostCSS with Hugo build Set theme = 'digitalgarden' in config.
Apple cream vanilla apple marzipan muffin
Tiramisu sprinkles marzipan lollipop marzipan dolor. Jelly candy marzipan vanilla candy ipsum. Sugar croissant lollipop vanilla cream marzipan. Sprinkles croissant cream dolor jelly marzipan.
Pastry jelly cookie sugar donut orange. Candy sweet cookie sweet donut marzipan. Vanilla cookie sprinkles pastry orange cookie. Marzipan donut ipsum sugar biscuit vanilla.
Candy cookie muffin pastry lollipop vanilla. Apple orange tiramisu jelly ipsum sugar. Candy cake orange ipsum orange muffin. Sugar pastry orange cream orange pastry.
4. Social Menu
The social menu can be used to configure all the social icons in the sidebar. Add links to your social media in the website config to show the icons.
[[menu.social]] name = 'Twitter' url = 'https://twitter.com' weight = 1 The name of the social menu needs to be unique and should be one of the supported values.
Supported values for the social menu item name:
Twitter GitHub LinkedIn Instagram Mastodon Dribbble Codepen Twitch Email RSS → Configure newsletter
6. Google Analytics
Digital garden theme utilizes the Hugo’s [internal template](internal templates) for Google analytics and so both Google analytics v3 and GA v4 (gtag) are supported.
Add your UA-PROPERTY_ID or G-MEASUREMENT_ID to config.toml
Google Analytics v3 (analytics.js) googleAnalytics = 'UA-PROPERTY_ID' Google Analytics v4 (gtag.js) googleAnalytics = 'G-MEASUREMENT_ID' → Configure Metatags
5. Newsletter
The theme supports a subscription to multiple newsletter providers.
Buttondown Substack Revue Buttondown [Params.newsletter.provider] = “buttondown”
Copy the action url from your buttondown admin dashboard and add it to [Params.newsletter.path] in config.toml
Substack [Params.newsletter.provider] = “substack”
Setting up substack is the easiest. Just add your substack newsletter URL (applicable for custom domains also) to [Params.newsletter.path] in config.toml
Note that since substack doesn’t have a native API for subscription. The theme uses the api from substackapi.