https://github.com/hauke96/the-green-spot
Repository for the blog "the green spot" about trekking, hiking and beeing outdoor active
https://github.com/hauke96/the-green-spot
Last synced: 8 months ago
JSON representation
Repository for the blog "the green spot" about trekking, hiking and beeing outdoor active
- Host: GitHub
- URL: https://github.com/hauke96/the-green-spot
- Owner: hauke96
- License: other
- Created: 2018-08-14T02:26:12.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-08-03T12:59:06.000Z (over 1 year ago)
- Last Synced: 2025-03-10T18:44:23.849Z (8 months ago)
- Language: Shell
- Size: 147 MB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# The green spot
A blog about tour reports, equipment and experiences about trekking and hiking.
# Installation
## Requirements
Make sure you have the following applications installed:
* `git`
* `hugo`
* a good editor to write/edit HTML, CSS and Markdown documents (like `Atom` or `vim`)
To build and deploy this, there's a script (`deploy.sh`).
It's tailored exactly to the server of [the-green-spot](https://the-green-spot.de), so you might want to change it.
Call this script with `--beta` to deploy into the beta sub-folder.
Nevertheless, you need some things in addition to the ones above in order to use the script:
* an interpreter (something like `gnome-terminal`)
* `ssh`
* `sshpass`
## Get this website
1. Clone this repo: `git clone https://github.com/hauke96/the-green-spot.git`
2. Install the _hamburg_-theme
* Create theme directory: `mkdir themes/hamburg`
* Download the theme: `git clone https://github.com/hauke96/hugo-theme-hamburg.git`
# Create content
This site is based on `hugo` so you can use its normal commands.
## Create a post
Posts are in `./content/posts/`. Therefore adding a new post looks like this:
```bash
$ hugo new posts/your-title.en.md
/home/name/whatever/the-green-spot/content/posts/your-title.en.md created
```
The post is pretty empty but the header has been generated:
```bash
$ cat content/posts/your-title.en.md
---
draft: true
title: ""
summary: ""
date: 2019-01-28T21:44:06+01:00
tags: []
author: ""
---
```
# Run it (locally)
Just use the `run.sh` script to start hugo with the local environment or `run.sh -f` to also open the local blog-URL in Firefox.
Of course you can also use hugo manually.
Just execute `hugo server -D -v` or build it (see blow) and use your own HTTP-server.
# Build it
Just execute `hugo` (without parameters) and look into the `public`-folder.
Specify an environment with `--environment ` to use a different config from the `./config/` folder.
## For beta
> This is out of date since there are dedicated configuration files in `./config/`.
There is a [beta site](https://the-green-spot.de/beta). Because the URL is different, it must be build like this:
1. Change the URL in the `config.toml`
2. Build using `./build.sh`
3. Upload
# Git versioning & workflow
## Versioning
The scheme is `[major].[minor].[patch]`.
Increase the `major`, when:
* A new article is done
* A new page is done
Increase the `minor`, when:
* Changes to an article
* Changes to a page
* Changes to the style
* Changes to the layout
Increase the `patch`, when:
* Just a fix is added
## Branches
There's the `master` and `dev` branch. The master contains (at least since the 23.08.2018) only released/releasable commits. The `dev` branch contains the indev-state and may not be usable.
Create features, articles or pages on a branch `/name` where `type` is e.g. `post` and where you develop/write the feature `name`.
## Development/writing workflow
For larger features or posts (which takes longer then a day or two):
1. Create a feature/article/post called `foo`: Create a branch `/foo` (where `` is one of `feature`, `post` or `page`)
2. Write and commit
3. Merge into `dev` when done
4. Adjust additional stuff if needed
5. Merge into `master` branch
6. Create a new tag
1. Major: Do not increase unless huge change (e.g. redesign of blog)
2. Minor: Increase for new article, post, etc.
3. Patch: Increase for smaller adjustments, fixed typos, rewriting of passages, etc.
7. Deploy on blog
# Compression of images
I used the following configurations:
## Background image
```bash
convert -strip -interlace Plane -sampling-factor 4:2:0 -quality 65% -resize x650 -gaussian-blur 1x1 bg.jpg bg-out.jpg
```
## Favicon
```bash
convert -interlace Plane -resize x32 favicon.jpg favicon.ico
```
## Photos for posts
For normal horizontal photos:
```bash
convert -resize 1600x -quality 75 DSC00835.JPG DSC00835_1600.JPG
```
For vertical photos:
```bash
convert -resize x1600 -auto-orient -quality 75 DSC00835.JPG DSC00835_1600.JPG
```
Convert all pictures at once:
```bash
for f in ./*; do convert -resize 1600x -quality 75 $f "${f%.*}_1600.jpg"; done
```
Print all JPG names with qualities above 75%:
```bash
for f in ./*; do q=$(identify -format '%Q' $f) && if [[ $q > 75 ]]; then echo "$f ==> $q"; fi; done
```
Convert all JPG files with a quality of over 75%:
```bash
for f in ./*; do q=$(identify -format '%Q' $f) && if [[ $q > 75 ]]; then mogrify -quality 75 $f; fi; done
```
Adjust hue/saturation/value (here 20% more saturation):
```bash
for f in ./*; do convert -modulate 100,120,100 $f "../rheinsteig-2020_saturation/${f}"; done
```