https://github.com/kdevo/osprey-delight
Osprey Delight is the free-minded artist's choice for a clutter-free and blazingly fast single-page portfolio.
https://github.com/kdevo/osprey-delight
contact-form developer-portfolio fast gallery homepage hugo hugo-mods hugo-theme lazy-loading lqip minimalistic pagespeed-insights personal personal-site portfolio
Last synced: 4 months ago
JSON representation
Osprey Delight is the free-minded artist's choice for a clutter-free and blazingly fast single-page portfolio.
- Host: GitHub
- URL: https://github.com/kdevo/osprey-delight
- Owner: kdevo
- License: apache-2.0
- Created: 2019-11-23T13:03:41.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2025-02-07T05:13:02.000Z (over 1 year ago)
- Last Synced: 2025-02-07T06:20:48.165Z (over 1 year ago)
- Topics: contact-form, developer-portfolio, fast, gallery, homepage, hugo, hugo-mods, hugo-theme, lazy-loading, lqip, minimalistic, pagespeed-insights, personal, personal-site, portfolio
- Language: SCSS
- Homepage: https://hugo-mods.github.io/
- Size: 4.97 MB
- Stars: 106
- Watchers: 3
- Forks: 47
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: history.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE.md
Awesome Lists containing this project
- awesome-starred - kdevo/osprey-delight - Osprey Delight is the free-minded artist's choice for a clutter-free and blazingly fast single-page portfolio. (others)
README
---
[](https://github.com/kdevo/osprey-delight/releases/latest)
[](https://github.com/kdevo/osprey-delight/discussions)
[](https://github.com/gohugoio/hugo/releases)
[](https://github.com/hugo-mods)
## Overview
Osprey Delight is the free-minded artist's choice for a clutter-free and blazingly fast single-page portfolio.
It's perfectly suited to show off your awesome work!
> It originates from [the great Osprey theme](https://github.com/tomanistor/osprey) by [Toma Nistor](https://github.com/tomanistor) and adds new optimizations and features to your **delight**.
### ⚠️ Life support
Due to Hugo's way of moving forward with breaking their API regularly [[1]](https://github.com/kdevo/osprey-delight/issues/48) [[2]](https://github.com/kdevo/osprey-delight/issues/58) [[3]](https://commaok.xyz/post/on_hugo/) [...](https://news.ycombinator.com/item?id=41822449), this project is an ongoing maintenance effort.
If you want this theme to continue to live and also be supported in newer Hugo versions, please consider to [sponsor it](https://github.com/sponsors/kdevo).
If that's not possible for you, there are other ways to show your support:
- ⭐ Give the project a star
- Start [contributing](https://github.com/kdevo/osprey-delight/blob/master/CONTRIBUTING.md)
### Showcase
Check out how Osprey Delight performs in the real-world:
- [Hugo Mods](https://hugo-mods.github.io/) - This theme is built around the Hugo Mods presented on the site. This site also has the [complete source code available](https://github.com/hugo-mods/hugo-mods.github.io).
- [KDEVO](https://kdevo.github.io/) - It wouldn't be me if I would not run this theme personally to ensure that everything runs smoothly.
### Features
- Modular and made out of extensible section building blocks:
- About: Introduce yourself
- Gallery: Show your work using a grid-based gallery with interactive modal boxes
- Blog: Lightweight blog features
- Contact: Contact form with Basin support and built-in spambot protection
- Use your high-quality images [assets](https://gohugo.io/categories/asset-management):
- Lazy image loading plus completely automatic resizing using [lazyimg](https://github.com/hugo-mods/lazyimg) module
- Blur-up technique using automatic low-quality image placeholders (LQIP)
- Modern WebP support with fallback for older browsers
- SEO:
- [Score 100 at PageSpeed Insights](https://developers.google.com/speed/pagespeed/insights/?url=https%3A%2F%2Fkdevo.github.io%2F). Every bit is fine-tuned with performance in mind!
- Auto-generated structured ensures that everyone finds you
- Delightful UX:
- Choose between different themes
- Awesome social icons in footer via [icons module](https://github.com/hugo-mods/icons)
- Smooth scrolling plus scroll-spy
- Automatically fetches GitHub repo data
- Sane fallbacks for No-Script/No-JS users
- Heavily [customizable](#customize-it) - no need to maintain a fork!
In general, many [open issues](https://github.com/tomanistor/osprey/issues) of the original theme have been resolved and code has been rewritten.
## Quickstart
> Please make sure to have [Hugo's extended version](https://github.com/gohugoio/hugo/releases) and [Go](https://go.dev/) installed.
> If you're new to Hugo, [visit the docs](https://gohugo.io/getting-started/quick-start/) for more info and general site setup.
Initialize your repo as a module (replace `` and `` with your GitHub repo):
```sh
hugo mod init github.com//
```
Download the [documented config file](https://github.com/kdevo/osprey-delight/blob/master/exampleSite/config.yaml), e.g. via curl:
```sh
curl https://raw.githubusercontent.com/kdevo/osprey-delight/master/exampleSite/config.yaml -O
```
Continue reading for [configuration options](#config).
### Upgrade
Receive the latest features of the theme:
```
hugo mod get -u
```
> It is good practice to [check the release notes](https://github.com/kdevo/osprey-delight/releases) before upgrading.
It's best if you simply check out the fully commented [config file](https://github.com/kdevo/osprey-delight/blob/master/exampleSite/config.yaml).
This theme follows a learning-by-doing approach.
### Images
This theme is asset-driven! It "knows" how to handle your precious assets, and there usually is no need for manual resizing.
For that to work, provide all of the following images in the [`assets` directory](https://gohugo.io/hugo-pipes/introduction/#asset-directory) (do not use the `static` directory).
The following table shows recommendations regarding the required assets:
| Image Type | Config Key | Minimum Width | Note |
| ----------- | ---------------------------- | ------------- | ----------------------------------------------------------------------------------- |
| Logo | `logoBig` (config.yaml) | 200px | Transparent, minimum margin top/bottom |
| Navbar-Logo | `logoSmall` (config.yaml) | 96px | Transparent, small margin top/bottom, prefer square format |
| Gallery | `image` (content/gallery/\*) | 400px | Transparent, medium margin top/bottom/left/right, prefer square or landscape format |
| Background | `background` (config.yaml) | 1920px | Optional, use a high-quality JPG |
### Content files
#### About section
To create an about section that renders on the home page, run:
```console
hugo new about.md
```
#### Gallery item
To create a new gallery item, run:
```console
hugo new gallery/my-item.md
```
You will get a fully documented file, which describes each config option separately.
### Contact form
Basin is a free AJAX contact form service that is used by this theme.
To set it up:
1. [Sign up for a free account](https://usebasin.com/users/sign_up) and create a form.
2. Copy and paste your form's URL endpoint to the `ajaxBasin` config.yaml parameter.
3. Select the `Submit this form via AJAX` option on your Basin dashboard.

#### Enable spambot protection
Under "Setup" → "Set a Custom Honeypot Field", input `_anti_spam_honeypot`.
Basin will [ignore all messages that contain this specific field](https://usebasin.com/docs/features/spam-filtering). This should work since there is a hidden field that users normally do not use, but spambots will blindly input their data.

[Please do not make a tick in the "reCAPTCHA" checkbox](https://github.com/kdevo/osprey-delight/discussions/22), this service is not supported and also typically not necessary.
## Learn more
Want to have full control over appearance? Check out [how to customize the theme more granularly](https://github.com/kdevo/osprey-delight/blob/master/CUSTOMIZING.md).
### Need help?
This theme has a GitHub-powered [community forum](https://github.com/kdevo/osprey-delight/discussions)!
Feel free to ask questions in the [Q&A](https://github.com/kdevo/osprey-delight/discussions/categories/q-a) (please make sure to completely read the docs and existing discussions/questions).
### Help wanted
This README probably needs some documentation improvements for the latest features.
Any PR regarding this is welcome. Please also check out [how to contribute](https://github.com/kdevo/osprey-delight/blob/master/CONTRIBUTING.md)!