Downloaded theme

This commit is contained in:
2026-03-23 18:35:59 +01:00
parent 326fab0e42
commit d091efd432
86 changed files with 14512 additions and 0 deletions

View File

@@ -0,0 +1,457 @@
# Minimal Black
A minimal, dark-mode first Hugo theme with true black backgrounds, purple accents, and comprehensive content styling. Perfect for developers, writers and everyone in general who want a clean, fast, and beautiful personal site.
![Minimal Black Theme](https://gitlab.com/jimchr12/hugo-minimal-black/-/raw/main/images/screenshot.png?ref_type=heads)
![Minimal Black Theme About Page](https://gitlab.com/jimchr12/hugo-minimal-black/-/raw/main/images/about.png?ref_type=heads)
![Minimal Black Theme About Alternative Page](https://gitlab.com/jimchr12/hugo-minimal-black/-/raw/main/images/about-alt.png?ref_type=heads)
## Features
-**Dark & Light Mode** — Auto-switching themes with manual toggle
- 🎨 **True Black Dark Mode** — OLED-friendly with purple (`#a855f7`) accents
- 📱 **Fully Responsive** — Mobile-first design that works on all devices
- 🔍 **Built-in Search** — Fast client-side search with keyboard shortcuts (Ctrl/Cmd+K)
- 📑 **Table of Contents** — Auto-generated TOC for blog posts with active section tracking
- 💻 **Beautiful Code Blocks** — Syntax highlighting with copy button and language labels
- 🎯 **Multiple Layouts** — Home, blog, projects, and two about page variants
- 📊 **Mermaid Diagrams** — Native support for flowcharts and diagrams
- 🖼️ **Image Gallery** — Gallery shortcode with lightbox functionality
- 🏷️ **GitHub-Style Alerts** — Support for note, tip, warning, danger, and important callouts
- 📈 **Analytics Ready** — Built-in support for Google Analytics, Plausible, Umami, and Fathom
-**Performance Optimized** — Minimal JavaScript, CSS, and fast load times
- 🎭 **Icon Support** — Font Awesome and Devicon integration
## Demo
**Live Demo:** [minimal-black-demo.netlify.app](https://minimal-black-demo.netlify.app)
## Quick Start
### Prerequisites
- Hugo Extended v0.120.0 or higher
- Node.js and npm (for Tailwind CSS compilation)
### Installation
1. **Create a new Hugo site** (or use existing):
```bash
hugo new site my-site
cd my-site
```
2. **Install the theme** using Git submodule:
```bash
git init
git submodule add https://gitlab.com/jimchr12/hugo-minimal-black.git themes/minimal-black
```
Or clone it directly:
```bash
git clone https://gitlab.com/jimchr12/hugo-minimal-black.git themes/minimal-black
```
3. **Install Node dependencies** (for Tailwind CSS):
```bash
cd themes/minimal-black
npm install
cd ../..
```
4. **Configure your site** — Copy the example configuration:
```bash
cp themes/minimal-black/exampleSite/hugo.toml ./hugo.toml
```
5. **Start Hugo server**:
```bash
hugo server -D
```
6. **Visit** `http://localhost:1313` in your browser.
## Configuration
### Basic Configuration
Edit your `hugo.toml` file:
```toml
baseURL = 'https://yoursite.com/'
languageCode = 'en-us'
title = 'Your Name'
theme = 'minimal-black'
[params]
brand = "Your Name"
# Favicon (place files in /static/)
favicon = "favicon.svg"
appleTouchIcon = "apple-touch-icon.png"
# Theme Configuration
[params.theme]
defaultTheme = "dark" # "light", "dark", or "system"
# Hero Section
[params.hero]
badge = "Software Engineer"
title = "Hi, I'm Your Name."
role = "Building minimal, fast web experiences."
summary = "Brief description of what you do."
avatar = "images/avatar.jpg" # Optional
location = "City, Country"
[params.hero.primary]
label = "View projects"
href = "/projects/"
[params.hero.secondary]
label = "Read the blog"
href = "/blog/"
# Social Links
[[params.social]]
label = "GitHub"
url = "https://github.com/yourusername"
icon = "fa-brands fa-github"
[[params.social]]
label = "LinkedIn"
url = "https://linkedin.com/in/yourusername"
icon = "fa-brands fa-linkedin-in"
[menu]
[[menu.main]]
name = "Home"
url = "/"
weight = 1
[[menu.main]]
name = "About"
url = "/about/"
weight = 2
[[menu.main]]
name = "Projects"
url = "/projects/"
weight = 3
[[menu.main]]
name = "Blog"
url = "/blog/"
weight = 4
[markup]
[markup.tableOfContents]
startLevel = 2
endLevel = 4
[markup.goldmark.renderer]
unsafe = true
[markup.highlight]
codeFences = true
guessSyntax = true
style = "monokai"
```
### Advanced Configuration
#### Analytics
Google Analytics (GA4):
```toml
[params.analytics]
googleAnalytics = "G-XXXXXXXXXX"
```
Plausible Analytics:
```toml
[params.analytics.plausible]
enabled = true
domain = "yourdomain.com"
```
Umami Analytics:
```toml
[params.analytics.umami]
enabled = true
scriptUrl = "https://analytics.yourdomain.com/script.js"
websiteId = "your-website-id"
```
#### Technology Stack Display
Show your tech stack on the home page:
```toml
[params.home]
[[params.home.tech]]
label = "Python"
icon = "devicon-python-plain"
[[params.home.tech]]
label = "Docker"
icon = "devicon-docker-plain"
```
#### About Page Customization
For the alternative about page layout:
```toml
[params.about.alt]
# Stats in profile card
[[params.about.alt.stats]]
value = "5+"
label = "Years Coding"
[[params.about.alt.stats]]
value = "20+"
label = "Projects"
# Skills with icons
[[params.about.alt.skills]]
label = "JavaScript"
icon = "devicon-javascript-plain"
```
## Content Organization
### Creating Content
**Blog Post:**
```bash
hugo new blog/my-first-post.md
```
```markdown
+++
title = "My First Post"
date = "2025-01-01"
author = "Your Name"
tags = ["hugo", "web development"]
categories = ["tutorials"]
draft = false
+++
Your content here...
```
**Project:**
```bash
hugo new projects/my-project.md
```
```markdown
+++
title = "My Project"
date = "2025-01-01"
description = "Brief project description"
github = "https://github.com/username/project"
demo = "https://project-demo.com"
tags = ["react", "typescript"]
featured = true
+++
Project details...
```
### About Page
Create `content/about.md`:
```markdown
+++
title = "About Me"
subtitle = "Software Engineer | Open Source Contributor"
layout = "about" # or "about-alternative"
+++
Your introduction here.
---
**Job Title** — [Company](https://company.com)
*Dates • Location*
Description of role...
---
**Another Role** — Company
*Dates • Location*
Description...
```
The `---` separators create timeline entries in the standard about layout, or experience cards in the alternative layout.
## Shortcodes
### Gallery
Create image galleries with lightbox:
```markdown
{{< gallery >}}
![Alt text](./images/screenshot.png)
![Alt text](./images/about.png)
![Alt text](./images/about-alt.png)
{{< /gallery >}}
```
### Alert
Create GitHub-style callouts:
```markdown
{{< alert type="note" >}}
This is a note alert.
{{< /alert >}}
{{< alert type="warning" >}}
This is a warning alert.
{{< /alert >}}
```
Available types: `note`, `tip`, `important`, `warning`, `danger`
### Mermaid Diagrams
````markdown
```mermaid
graph TD
A[Start] --> B[Process]
B --> C[End]
```
````
## Customization
### Colors
Theme colors are defined in `assets/css/base.css`:
```css
:root {
--color-bg: #f9fafb; /* Light background */
--color-accent: #a855f7; /* Purple accent */
}
html[data-theme="dark"] {
--color-bg: #000000; /* True black */
--color-accent: #c084fc; /* Lighter purple */
}
```
### CSS Architecture
The theme uses a modular CSS structure:
```
assets/css/
├── main.css # Imports all modules
├── base.css # Tailwind & variables
├── utilities.css # Utility classes
├── components/ # Reusable components
├── content/ # Content styling
├── pages/ # Page-specific styles
└── responsive.css # Media queries
```
See [CSS-STRUCTURE.md](CSS-STRUCTURE.md) for details.
### Adding Custom CSS
Create `assets/css/custom.css` in your site root and import it in your config:
```toml
[params]
customCSS = ["css/custom.css"]
```
## Deployment
### Netlify
1. Push your site to GitHub
2. Connect to Netlify
3. Build command: `hugo --minify`
4. Publish directory: `public`
5. Environment variables:
```
HUGO_VERSION = 0.120.0
NODE_VERSION = 18
```
## Browser Support
- Chrome/Edge (last 2 versions)
- Firefox (last 2 versions)
- Safari (last 2 versions)
- Mobile browsers (iOS Safari, Chrome Mobile)
## Troubleshooting
### CSS not loading
Ensure Tailwind dependencies are installed:
```bash
cd themes/minimal-black
npm install
```
Also ensure css is compiled:
```bash
npx tailwindcss -i ./assets/css/main.css -o ./static/css/main.css
```
### Search not working
Check that `[outputs]` includes JSON in `hugo.toml`:
```toml
[outputs]
home = ["HTML", "RSS", "JSON"]
```
### Icons not showing
Verify icon library is enabled:
```toml
[params.icons]
useFontAwesome = true
useDevicon = true
```
## Contributing
Contributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
1. Fork the repository
2. Create a feature branch
3. Make your changes
4. Submit a pull request
## License
This theme is released under the MIT License. See [LICENSE](LICENSE) for details.
## Credits
- Built with [Hugo](https://gohugo.io/)
- Styled with [Tailwind CSS](https://tailwindcss.com/)
- Icons from [Font Awesome](https://fontawesome.com/) and [Devicon](https://devicon.dev/)
- Typography plugin by [@tailwindcss/typography](https://github.com/tailwindlabs/tailwindcss-typography)
## Changelog
See [CHANGELOG.md](CHANGELOG.md) for version history and updates.
---
**Made with ❤️ by [Jim Christopoulos](https://jimchristopoulos.com/)**
If you find this theme useful, consider giving it a ⭐ and/or supporting its development!
[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/jimchr)