added some old blog posts
This commit is contained in:
parent
63319128c1
commit
022922dfc7
18 changed files with 847 additions and 15 deletions
|
|
@ -20,10 +20,10 @@ DefaultContentLanguage = "en" # Default language fo
|
||||||
# Configure the home page
|
# Configure the home page
|
||||||
[params.home]
|
[params.home]
|
||||||
introHeight = "fullheight" # Input either "medium" or "large" or "fullheight"
|
introHeight = "fullheight" # Input either "medium" or "large" or "fullheight"
|
||||||
showLatest = true # Show latest blog post summary
|
showLatest = false # Show latest blog post summary
|
||||||
showAllPosts = false # Set true to list all posts on home page, or set false to link to separate blog list page
|
showAllPosts = false # Set true to list all posts on home page, or set false to link to separate blog list page
|
||||||
allPostsArchiveFormat = true # show all posts in an archive format
|
allPostsArchiveFormat = true # show all posts in an archive format
|
||||||
numberOfProjectsToShow = 3 # Maximum number of projects to show on home page. Unset or comment out to show all projects
|
numberOfProjectsToShow = 0 # Maximum number of projects to show on home page. Unset or comment out to show all projects
|
||||||
localTime = false # Show your current local time in contact section
|
localTime = false # Show your current local time in contact section
|
||||||
timeZone = "America/Los_Angeles" # Your timezone as in the TZ* column of this list: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
|
timeZone = "America/Los_Angeles" # Your timezone as in the TZ* column of this list: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
|
||||||
timeFormat = "en-US" # Language specific format to use
|
timeFormat = "en-US" # Language specific format to use
|
||||||
|
|
|
||||||
10
content/blog/HomeNetworkDesign/HomeNetworkDesign.md
Normal file
10
content/blog/HomeNetworkDesign/HomeNetworkDesign.md
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
+++
|
||||||
|
date = '2025-10-30T19:08:55Z'
|
||||||
|
draft = true
|
||||||
|
title = 'Home Network Design'
|
||||||
|
+++
|
||||||
|
|
||||||
|
Here is how I've setup my home network. My goal is to build something that is reliable, performant, as open-source as possible, and re-uses old electronics.
|
||||||
|
|
||||||
|
My thinking is based on homenethowto.com and a blog that I can't find anymore that had instructions for how to set up a cheap, simple network with and EdgeRouter and a Unifi AP.
|
||||||
|
|
||||||
10
content/blog/PrettyRivers/PrettyRivers.md
Normal file
10
content/blog/PrettyRivers/PrettyRivers.md
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
+++
|
||||||
|
date = '2024-01-01T19:13:02Z'
|
||||||
|
title = 'Pretty Rivers'
|
||||||
|
+++
|
||||||
|
|
||||||
|
I like looking at maps that isolate different natural features. And I think that rivers make pretty patterns. So I made a series of scripts that generates a pretty map of rivers. I hope to print the maps of places that are important to me as art.
|
||||||
|
|
||||||
|
The code that generates these maps is here: https://git.dendroalsia.net/ben/pretty_rivers
|
||||||
|
---
|
||||||
|

|
||||||
BIN
content/blog/PrettyRivers/wisconsin_rivers.png
Normal file
BIN
content/blog/PrettyRivers/wisconsin_rivers.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 15 MiB |
11
content/blog/RiverLevelCharts/RiverLevelCharts.md
Normal file
11
content/blog/RiverLevelCharts/RiverLevelCharts.md
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
+++
|
||||||
|
date = '2024-10-14T19:13:18Z'
|
||||||
|
title = 'River Level Charts'
|
||||||
|
+++
|
||||||
|
|
||||||
|
I'm interested in rivers (both ecologically and recreationally) and I want to know water level they are currently at, and how does that compare to their water levels throughout the year and in their recent history.
|
||||||
|
In the US, the United States Geologic Survey (USGS) maintains a large set of realtime water level sensors, and that dataset is queriable through an API. So I wrote these scripts that take a set of rivers and their associated gauge IDs, downloads the recent and historical data and generates a bunch of graphs.
|
||||||
|
|
||||||
|
Here's the code: https://git.dendroalsia.net/ben/USGS_NWIS
|
||||||
|
|
||||||
|

|
||||||
6
content/blog/_index.md
Normal file
6
content/blog/_index.md
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
+++
|
||||||
|
date = '2025-10-30T19:08:15Z'
|
||||||
|
draft = true
|
||||||
|
title = 'Posts'
|
||||||
|
url = '/blog'
|
||||||
|
+++
|
||||||
142
layouts/index.html
Normal file
142
layouts/index.html
Normal file
|
|
@ -0,0 +1,142 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="{{ .Site.LanguageCode }}">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
{{ partial "head/metadata.html" . }}
|
||||||
|
{{ if .Site.Params.plausible }}{{ partial "head/plausible.html" . }}{{ end }}
|
||||||
|
{{ partial "head/openGraph.html" . }}
|
||||||
|
{{ partial "head/favicons.html" . }}
|
||||||
|
{{ partial "head/css.html" . }}
|
||||||
|
{{ partial "css/owlCarousel.html" . }}
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
{{ with .Site.GetPage "/home" }}
|
||||||
|
<section id="top" class="hero is-{{ .Site.Params.home.introHeight | default "fullheight" }}">
|
||||||
|
<!-- Hero head section to play nice with Bulma -->
|
||||||
|
<div class="hero-head"></div>
|
||||||
|
|
||||||
|
<!-- Super sweet Hero body title -->
|
||||||
|
<div class="hero-body">
|
||||||
|
<div class="container has-text-centered">
|
||||||
|
<!-- Title and tagline -->
|
||||||
|
<h1 class="bold-title {{ if or (.Site.Params.fadeIn | default true) .Site.Params.fadeInIndex }}fade-in one{{ end }}">
|
||||||
|
{{ .Title | markdownify }}
|
||||||
|
</h1>
|
||||||
|
<div class="subtitle is-3 {{ if or (.Site.Params.fadeIn | default true) .Site.Params.fadeInIndex }}fade-in two{{ end }}">
|
||||||
|
{{ .Content }}
|
||||||
|
</div>
|
||||||
|
<!-- End title and tagline -->
|
||||||
|
<!-- Some social icons -->
|
||||||
|
<div class="{{ if or (.Site.Params.fadeIn | default true) .Site.Params.fadeInIndex }}fade-in three{{ end }}">
|
||||||
|
{{ partial "home/social.html" . }}
|
||||||
|
</div>
|
||||||
|
<!-- End top social icons -->
|
||||||
|
</div>
|
||||||
|
</div> <!-- End of Hero body -->
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
<div class="hero-foot {{ if or (.Site.Params.fadeIn | default true) .Site.Params.fadeInIndex }}fade-in three{{ end }}">
|
||||||
|
<!-- Tell them all about it! -->
|
||||||
|
{{ partial "nav.html" . }}
|
||||||
|
</div>
|
||||||
|
</section> <!-- Done with Hero -->
|
||||||
|
|
||||||
|
{{ with .Site.GetPage "/home" }}
|
||||||
|
{{ $home := . }}
|
||||||
|
{{ $pages := .Resources.ByType "page" }}
|
||||||
|
|
||||||
|
{{ with .Site.GetPage "/blog" }}
|
||||||
|
{{ $pages = $pages | append . }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{ with .Site.GetPage "/projects" }}
|
||||||
|
{{ $pages = $pages | append . }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{ range sort $pages "Params.weight" }}
|
||||||
|
{{ if ne .Name "contact.md" }}
|
||||||
|
{{ if .File }}
|
||||||
|
{{ if eq (os.Stat .File.Dir).Name "projects" }}
|
||||||
|
<!-- Now for some cool projects -->
|
||||||
|
{{ partial "home/projects.html" . }}
|
||||||
|
{{ else if ne (os.Stat .File.Dir).Name "blog" }}
|
||||||
|
|
||||||
|
<!-- Range through all sections in /home execept contact.md -->
|
||||||
|
<div class="section" id="{{ .File.TranslationBaseName }}">
|
||||||
|
<div class="container">
|
||||||
|
<h2 class="title is-2 has-text-centered">{{ .Title | markdownify }}</h2>
|
||||||
|
{{ if .Params.Image }}
|
||||||
|
<div class="columns">
|
||||||
|
<div class="column is-one-third has-text-centered">
|
||||||
|
{{ with $home.Resources.GetMatch .Params.Image }}
|
||||||
|
{{ with .Resize "320x" }}
|
||||||
|
<img class="img-responsive avatar" src="{{ .Permalink }}" alt="{{ .Name }}">
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
</div>
|
||||||
|
<div class="markdown column">
|
||||||
|
{{ .Content }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{{ else }}
|
||||||
|
<div class="markdown has-text-centered">
|
||||||
|
{{ .Content }}
|
||||||
|
</div>
|
||||||
|
{{ end }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="container">
|
||||||
|
<hr>
|
||||||
|
</div>
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
<!-- Let`s chat, shall we? -->
|
||||||
|
{{ with .Resources.GetMatch "contact.md" }}
|
||||||
|
<div class="section" id="{{ .File.TranslationBaseName }}">
|
||||||
|
<div class="container has-text-centered">
|
||||||
|
<h2 class="title is-2">{{ .Title | markdownify }}</h2>
|
||||||
|
<div class="markdown">
|
||||||
|
{{ .Content }}
|
||||||
|
</div>
|
||||||
|
{{ if .Site.Params.home.localTime }}
|
||||||
|
<p>{{ i18n "index_currentTime" . }} <span id="time"></span>.</p>
|
||||||
|
{{ end }}
|
||||||
|
{{ with .Site.Params.email }}
|
||||||
|
<h3 class="subtitle is-3 has-text-centered top-pad">
|
||||||
|
<a href="mailto:{{ . }}">{{ . }}</a>
|
||||||
|
</h3>
|
||||||
|
{{ end }}
|
||||||
|
{{ partial "home/social.html" . }}
|
||||||
|
</div>
|
||||||
|
<!-- End Contact container -->
|
||||||
|
</div>
|
||||||
|
<div class="container">
|
||||||
|
<hr>
|
||||||
|
</div>
|
||||||
|
{{ end }}
|
||||||
|
<!-- End Contact section -->
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{ partial "footer/text.html" . }}
|
||||||
|
|
||||||
|
<!-- End of fade in three section -->
|
||||||
|
{{ partial "footer/scripts.html" . }}
|
||||||
|
{{ partial "js/owlCarousel.html" . }}
|
||||||
|
|
||||||
|
{{ if .Site.Params.home.localTime }}
|
||||||
|
<script>
|
||||||
|
function update_localtime() {
|
||||||
|
const time = new Date().toLocaleTimeString('{{ .Site.Params.home.timeFormat }}', { timeZone: '{{ .Site.Params.home.timeZone }}', timeStyle: 'short' });
|
||||||
|
document.getElementById('time').innerHTML = time;
|
||||||
|
}
|
||||||
|
update_localtime();
|
||||||
|
// Updating every second to prevent seconds looking like stood still when timeStyle is ignored.
|
||||||
|
setInterval(update_localtime, 1000);
|
||||||
|
</script>
|
||||||
|
{{ end }}
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
119
layouts/partials/nav.html
Normal file
119
layouts/partials/nav.html
Normal file
|
|
@ -0,0 +1,119 @@
|
||||||
|
{{ if .Site.Params.showMenu | default true }}
|
||||||
|
<!-- Begin Nav bar -->
|
||||||
|
<div class="container">
|
||||||
|
<hr>
|
||||||
|
<nav class="navbar" role="navigation" aria-label="main navigation">
|
||||||
|
{{ $isHome := .Page.IsHome }}
|
||||||
|
<a role="button" class="navbar-burger" data-target="navMenu" aria-label="menu" aria-expanded="false" >
|
||||||
|
<span aria-hidden="true"></span>
|
||||||
|
<span aria-hidden="true"></span>
|
||||||
|
<span aria-hidden="true"></span>
|
||||||
|
</a>
|
||||||
|
<div class="navbar-menu {{ if $isHome }}has-content-centered{{ end }}" id="navMenu">
|
||||||
|
<!-- look for custom menu and include it -->
|
||||||
|
{{ if .Site.Menus.main }}
|
||||||
|
{{ range .Site.Menus.main }}
|
||||||
|
{{ if .HasChildren }}
|
||||||
|
<a class="navbar-item" href="{{ .URL }}">
|
||||||
|
{{ .Pre }}
|
||||||
|
{{ .Name }}
|
||||||
|
{{ .Post }}
|
||||||
|
</a>
|
||||||
|
{{ range .Children }}
|
||||||
|
<!-- TODO: style children diffrent then parents-->
|
||||||
|
<a class="navbar-item" href="{{ .URL }}">
|
||||||
|
{{ .Pre }}
|
||||||
|
{{ .Name }}
|
||||||
|
{{ .Post }}
|
||||||
|
</a>
|
||||||
|
{{ end }}
|
||||||
|
{{ else }}
|
||||||
|
<a class="navbar-item" href="{{ .URL }}">
|
||||||
|
{{ .Pre }}
|
||||||
|
{{ .Name }}
|
||||||
|
{{ .Post }}
|
||||||
|
</a>
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
{{ else }}
|
||||||
|
<!-- use default menu -->
|
||||||
|
{{ if not $isHome }}
|
||||||
|
<a class="navbar-item" href="{{ "" | relLangURL }}">{{ i18n "nav_main" . }}</a>
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{ with .Site.GetPage "/home" }}
|
||||||
|
{{ $pages := .Resources.ByType "page" }}
|
||||||
|
|
||||||
|
{{ with .Site.GetPage "/blog" }}
|
||||||
|
{{ $pages = $pages | append . }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{ with .Site.GetPage "/projects" }}
|
||||||
|
{{ $pages = $pages | append . }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{ range sort $pages "Params.weight" }}
|
||||||
|
{{ if ne .Name "contact.md" }}
|
||||||
|
{{ if eq (os.Stat .File.Dir).Name "projects" }}
|
||||||
|
<!-- Now for some cool projects -->
|
||||||
|
{{ if $isHome }}
|
||||||
|
<a class="navbar-item" href="{{ printf "#%s" ( .Title | urlize) | relLangURL }}">{{ .Title | markdownify }}</a>
|
||||||
|
{{ else }}
|
||||||
|
{{ $pageIsInProjects := eq $.Page.Section "projects"}}
|
||||||
|
{{ if not (and $pageIsInProjects (eq $.Page.Kind "section")) }}
|
||||||
|
<a class="navbar-item" href="{{ .Permalink }}">
|
||||||
|
{{ if $pageIsInProjects }}
|
||||||
|
{{ i18n "nav_backToSection" . }}
|
||||||
|
{{ else }}
|
||||||
|
<!-- fix-224 -->
|
||||||
|
{{ .Title }}
|
||||||
|
<!-- end fix-224 -->
|
||||||
|
{{ end }}
|
||||||
|
</a>
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
{{ else if eq (os.Stat .File.Dir).Name "blog" }}
|
||||||
|
<!-- Let`s show some blog posts -->
|
||||||
|
{{ if $isHome }}
|
||||||
|
<a class="navbar-item" href="{{ .Permalink }}">{{ .Title | markdownify }}</a>
|
||||||
|
{{ else }}
|
||||||
|
{{ $pageIsInBlog := eq $.Page.Section "blog"}}
|
||||||
|
{{ if not (and $pageIsInBlog (eq $.Page.Kind "section")) }}
|
||||||
|
<a class="navbar-item" href="{{ .Permalink }}">
|
||||||
|
{{ if $pageIsInBlog }}
|
||||||
|
{{ i18n "nav_backToSection" . }}
|
||||||
|
{{ else }}
|
||||||
|
{{ .Title | singularize}}
|
||||||
|
{{ end }}
|
||||||
|
</a>
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
{{ else }}
|
||||||
|
<a class="navbar-item" href="{{ if $isHome }}#{{ .File.TranslationBaseName }}{{ else }}{{ printf "#%s" (.File.TranslationBaseName | urlize) | relLangURL }}{{ end }}">{{ .Title | markdownify }}</a>
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{ with .Site.GetPage "/home" }}
|
||||||
|
{{ with .Resources.GetMatch "contact.md" }}
|
||||||
|
<a class="navbar-item" href="{{ if $isHome }}#{{ .File.TranslationBaseName }}{{ else }}{{ printf "#%s" (.File.TranslationBaseName | urlize) | relLangURL }}{{ end }}">{{ .Title | markdownify }}</a>
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{ range $.Site.Home.AllTranslations.ByWeight }}
|
||||||
|
{{ if ne .Language.LanguageName $.Language.LanguageName }}
|
||||||
|
<a class="navbar-item" href="{{ .Permalink }}">{{ .Language.LanguageName }}</a>
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{ if and .Site.Params.showRSSButton }}
|
||||||
|
<a class="navbar-item" href="{{ with .OutputFormats.Get "RSS" }}{{ .RelPermalink }}{{ end }}"><i class="fas fa-rss"></i></a>
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
</div>
|
||||||
|
</nav>
|
||||||
|
<hr>
|
||||||
|
</div>
|
||||||
|
<!-- End Nav bar -->
|
||||||
|
{{ end }}
|
||||||
|
|
@ -87,6 +87,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -95,6 +97,22 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<a class="navbar-item" href="">
|
||||||
|
|
||||||
|
Post
|
||||||
|
|
||||||
|
</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<a class="navbar-item" href="/#about">About</a>
|
<a class="navbar-item" href="/#about">About</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
226
public/blog/prettyrivers/prettyrivers/index.html
Normal file
226
public/blog/prettyrivers/prettyrivers/index.html
Normal file
|
|
@ -0,0 +1,226 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-us">
|
||||||
|
<head>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="chrome=1">
|
||||||
|
<meta name="HandheldFriendly" content="True">
|
||||||
|
<meta name="MobileOptimized" content="320">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<meta name="referrer" content="no-referrer">
|
||||||
|
<meta name="description" content="Website Description">
|
||||||
|
<title>
|
||||||
|
Pretty Rivers - Dendroalsia
|
||||||
|
</title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<meta property="og:title" content="Pretty Rivers - Dendroalsia" />
|
||||||
|
<meta property="og:type" content="website" />
|
||||||
|
<meta property="og:description" content="Website Description"/>
|
||||||
|
<meta property="og:url" content="https://www.dendroalsia.net/blog/prettyrivers/prettyrivers/"/>
|
||||||
|
<meta property="og:site_name" content="Dendroalsia"/>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<meta property="og:image" content="https://www.dendroalsia.net/home/moss.webp"/>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<link rel="shortcut icon" href="/img/fav.ico">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<link rel="stylesheet" href="/css/main.min.842355dd2ec6a34552c5ffdca0274879393643308cc04aed4876a79219a88809.css" integrity="sha256-hCNV3S7Go0VSxf/coCdIeTk2QzCMwErtSHankhmoiAk=" crossorigin="anonymous" media="screen">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<section id="top" class="section">
|
||||||
|
|
||||||
|
<div class="container hero ">
|
||||||
|
|
||||||
|
|
||||||
|
<h1 class="bold-title is-1">Posts</h1>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="section ">
|
||||||
|
|
||||||
|
|
||||||
|
<div class="container">
|
||||||
|
<hr>
|
||||||
|
<nav class="navbar" role="navigation" aria-label="main navigation">
|
||||||
|
|
||||||
|
<a role="button" class="navbar-burger" data-target="navMenu" aria-label="menu" aria-expanded="false" >
|
||||||
|
<span aria-hidden="true"></span>
|
||||||
|
<span aria-hidden="true"></span>
|
||||||
|
<span aria-hidden="true"></span>
|
||||||
|
</a>
|
||||||
|
<div class="navbar-menu " id="navMenu">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<a class="navbar-item" href="/">main</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<a class="navbar-item" href="">
|
||||||
|
|
||||||
|
Back to Posts
|
||||||
|
|
||||||
|
</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<a class="navbar-item" href="/#about">About</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<a class="navbar-item" href="/#contact">Contact</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</nav>
|
||||||
|
<hr>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="container">
|
||||||
|
<h2 class="title is-1 top-pad strong-post-title">
|
||||||
|
<a href="https://www.dendroalsia.net/blog/prettyrivers/prettyrivers/">Pretty Rivers</a>
|
||||||
|
</h2>
|
||||||
|
|
||||||
|
<div class="post-data">
|
||||||
|
Jan 1, 2024
|
||||||
|
|
||||||
|
|
|
||||||
|
1 minute read
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="container markdown top-pad">
|
||||||
|
<p>I like looking at maps that isolate different natural features. And I think that rivers make pretty patterns. So I made a series of scripts that generates a pretty map of rivers. I hope to print the maps of places that are important to me as art.</p>
|
||||||
|
|
||||||
|
<h2 id="the-code-that-generates-these-maps-is-here" class="anchor-link"><a href="#the-code-that-generates-these-maps-is-here">The code that generates these maps is here: <a href="https://git.dendroalsia.net/ben/pretty_rivers">https://git.dendroalsia.net/ben/pretty_rivers</a></a></h2>
|
||||||
|
<p><img src="https://git.dendroalsia.net/ben/pretty_rivers/media/branch/main/example.png" alt="Wisconsin Rivers"></p>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="container">
|
||||||
|
<hr>
|
||||||
|
</div>
|
||||||
|
<div class="container has-text-centered top-pad">
|
||||||
|
<a href="#top">
|
||||||
|
<i class="fa fa-arrow-up"></i>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="container">
|
||||||
|
<hr>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="section" id="footer">
|
||||||
|
<div class="container has-text-centered">
|
||||||
|
|
||||||
|
<span class="footer-text">
|
||||||
|
|
||||||
|
</span>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<script src="https://www.dendroalsia.net/js/bundle.5c23c0437f001a469ca373a465a6f7487203d18e10cdff76d86a60af66d5ee28.js" integrity="sha256-XCPAQ38AGkaco3OkZab3SHID0Y4Qzf922Gpgr2bV7ig="></script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
226
public/blog/riverlevelcharts/riverlevelcharts/index.html
Normal file
226
public/blog/riverlevelcharts/riverlevelcharts/index.html
Normal file
|
|
@ -0,0 +1,226 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-us">
|
||||||
|
<head>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="chrome=1">
|
||||||
|
<meta name="HandheldFriendly" content="True">
|
||||||
|
<meta name="MobileOptimized" content="320">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<meta name="referrer" content="no-referrer">
|
||||||
|
<meta name="description" content="Website Description">
|
||||||
|
<title>
|
||||||
|
River Level Charts - Dendroalsia
|
||||||
|
</title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<meta property="og:title" content="River Level Charts - Dendroalsia" />
|
||||||
|
<meta property="og:type" content="website" />
|
||||||
|
<meta property="og:description" content="Website Description"/>
|
||||||
|
<meta property="og:url" content="https://www.dendroalsia.net/blog/riverlevelcharts/riverlevelcharts/"/>
|
||||||
|
<meta property="og:site_name" content="Dendroalsia"/>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<meta property="og:image" content="https://www.dendroalsia.net/home/moss.webp"/>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<link rel="shortcut icon" href="/img/fav.ico">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<link rel="stylesheet" href="/css/main.min.842355dd2ec6a34552c5ffdca0274879393643308cc04aed4876a79219a88809.css" integrity="sha256-hCNV3S7Go0VSxf/coCdIeTk2QzCMwErtSHankhmoiAk=" crossorigin="anonymous" media="screen">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<section id="top" class="section">
|
||||||
|
|
||||||
|
<div class="container hero ">
|
||||||
|
|
||||||
|
|
||||||
|
<h1 class="bold-title is-1">Posts</h1>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="section ">
|
||||||
|
|
||||||
|
|
||||||
|
<div class="container">
|
||||||
|
<hr>
|
||||||
|
<nav class="navbar" role="navigation" aria-label="main navigation">
|
||||||
|
|
||||||
|
<a role="button" class="navbar-burger" data-target="navMenu" aria-label="menu" aria-expanded="false" >
|
||||||
|
<span aria-hidden="true"></span>
|
||||||
|
<span aria-hidden="true"></span>
|
||||||
|
<span aria-hidden="true"></span>
|
||||||
|
</a>
|
||||||
|
<div class="navbar-menu " id="navMenu">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<a class="navbar-item" href="/">main</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<a class="navbar-item" href="">
|
||||||
|
|
||||||
|
Back to Posts
|
||||||
|
|
||||||
|
</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<a class="navbar-item" href="/#about">About</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<a class="navbar-item" href="/#contact">Contact</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</nav>
|
||||||
|
<hr>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="container">
|
||||||
|
<h2 class="title is-1 top-pad strong-post-title">
|
||||||
|
<a href="https://www.dendroalsia.net/blog/riverlevelcharts/riverlevelcharts/">River Level Charts</a>
|
||||||
|
</h2>
|
||||||
|
|
||||||
|
<div class="post-data">
|
||||||
|
Oct 14, 2024
|
||||||
|
|
||||||
|
|
|
||||||
|
1 minute read
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="container markdown top-pad">
|
||||||
|
<p>I’m interested in rivers (both ecologically and recreationally) and I want to know water level they are currently at, and how does that compare to their water levels throughout the year and in their recent history.
|
||||||
|
In the US, the United States Geologic Survey (USGS) maintains a large set of realtime water level sensors, and that dataset is queriable through an API. So I wrote these scripts that take a set of rivers and their associated gauge IDs, downloads the recent and historical data and generates a bunch of graphs.</p>
|
||||||
|
<p>Here’s the code: <a href="https://git.dendroalsia.net/ben/USGS_NWIS">https://git.dendroalsia.net/ben/USGS_NWIS</a></p>
|
||||||
|
<p><img src="https://git.dendroalsia.net/ben/USGS_NWIS/media/branch/main/example_last_6_months.png" alt="Example graph"></p>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="container">
|
||||||
|
<hr>
|
||||||
|
</div>
|
||||||
|
<div class="container has-text-centered top-pad">
|
||||||
|
<a href="#top">
|
||||||
|
<i class="fa fa-arrow-up"></i>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="container">
|
||||||
|
<hr>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="section" id="footer">
|
||||||
|
<div class="container has-text-centered">
|
||||||
|
|
||||||
|
<span class="footer-text">
|
||||||
|
|
||||||
|
</span>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<script src="https://www.dendroalsia.net/js/bundle.5c23c0437f001a469ca373a465a6f7487203d18e10cdff76d86a60af66d5ee28.js" integrity="sha256-XCPAQ38AGkaco3OkZab3SHID0Y4Qzf922Gpgr2bV7ig="></script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 344 KiB |
|
|
@ -128,6 +128,8 @@ Dendroalsia
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -136,6 +138,15 @@ Dendroalsia
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<a class="navbar-item" href="">Posts</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<a class="navbar-item" href="#about">About</a>
|
<a class="navbar-item" href="#about">About</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -169,12 +180,20 @@ Dendroalsia
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -200,13 +219,6 @@ Dendroalsia
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="container has-text-centered top-pad">
|
|
||||||
<a href="#top">
|
|
||||||
<i class="fa fa-arrow-up"></i>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<hr>
|
<hr>
|
||||||
|
|
@ -254,12 +266,6 @@ Dendroalsia
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="container has-text-centered top-pad">
|
|
||||||
<a href="#top">
|
|
||||||
<i class="fa fa-arrow-up"></i>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<hr>
|
<hr>
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,21 @@
|
||||||
<description>Recent content on Dendroalsia</description>
|
<description>Recent content on Dendroalsia</description>
|
||||||
<generator>Hugo</generator>
|
<generator>Hugo</generator>
|
||||||
<language>en-us</language>
|
<language>en-us</language>
|
||||||
|
<lastBuildDate>Mon, 14 Oct 2024 19:13:18 +0000</lastBuildDate>
|
||||||
<atom:link href="https://www.dendroalsia.net/index.xml" rel="self" type="application/rss+xml" />
|
<atom:link href="https://www.dendroalsia.net/index.xml" rel="self" type="application/rss+xml" />
|
||||||
|
<item>
|
||||||
|
<title>River Level Charts</title>
|
||||||
|
<link>https://www.dendroalsia.net/blog/riverlevelcharts/riverlevelcharts/</link>
|
||||||
|
<pubDate>Mon, 14 Oct 2024 19:13:18 +0000</pubDate>
|
||||||
|
<guid>https://www.dendroalsia.net/blog/riverlevelcharts/riverlevelcharts/</guid>
|
||||||
|
<description><p>I&rsquo;m interested in rivers (both ecologically and recreationally) and I want to know water level they are currently at, and how does that compare to their water levels throughout the year and in their recent history.
In the US, the United States Geologic Survey (USGS) maintains a large set of realtime water level sensors, and that dataset is queriable through an API. So I wrote these scripts that take a set of rivers and their associated gauge IDs, downloads the recent and historical data and generates a bunch of graphs.</p></description>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<title>Pretty Rivers</title>
|
||||||
|
<link>https://www.dendroalsia.net/blog/prettyrivers/prettyrivers/</link>
|
||||||
|
<pubDate>Mon, 01 Jan 2024 19:13:02 +0000</pubDate>
|
||||||
|
<guid>https://www.dendroalsia.net/blog/prettyrivers/prettyrivers/</guid>
|
||||||
|
<description><p>I like looking at maps that isolate different natural features. And I think that rivers make pretty patterns. So I made a series of scripts that generates a pretty map of rivers. I hope to print the maps of places that are important to me as art.</p>

<h2 id="the-code-that-generates-these-maps-is-here" class="anchor-link"><a href="#the-code-that-generates-these-maps-is-here">The code that generates these maps is here: <a href="https://git.dendroalsia.net/ben/pretty_rivers">https://git.dendroalsia.net/ben/pretty_rivers</a></a></h2>
<p><img src="https://git.dendroalsia.net/ben/pretty_rivers/media/branch/main/example.png" alt="Wisconsin Rivers"></p></description>
|
||||||
|
</item>
|
||||||
</channel>
|
</channel>
|
||||||
</rss>
|
</rss>
|
||||||
|
|
|
||||||
|
|
@ -87,6 +87,8 @@ Series - Dendroalsia
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -95,6 +97,22 @@ Series - Dendroalsia
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<a class="navbar-item" href="">
|
||||||
|
|
||||||
|
Post
|
||||||
|
|
||||||
|
</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<a class="navbar-item" href="/#about">About</a>
|
<a class="navbar-item" href="/#about">About</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,13 @@
|
||||||
xmlns:xhtml="http://www.w3.org/1999/xhtml">
|
xmlns:xhtml="http://www.w3.org/1999/xhtml">
|
||||||
<url>
|
<url>
|
||||||
<loc>https://www.dendroalsia.net/</loc>
|
<loc>https://www.dendroalsia.net/</loc>
|
||||||
|
<lastmod>2025-10-30T19:08:55+00:00</lastmod>
|
||||||
|
</url><url>
|
||||||
|
<loc>https://www.dendroalsia.net/blog/riverlevelcharts/riverlevelcharts/</loc>
|
||||||
|
<lastmod>2024-10-14T19:13:18+00:00</lastmod>
|
||||||
|
</url><url>
|
||||||
|
<loc>https://www.dendroalsia.net/blog/prettyrivers/prettyrivers/</loc>
|
||||||
|
<lastmod>2024-01-01T19:13:02+00:00</lastmod>
|
||||||
</url><url>
|
</url><url>
|
||||||
<loc>https://www.dendroalsia.net/series/</loc>
|
<loc>https://www.dendroalsia.net/series/</loc>
|
||||||
</url><url>
|
</url><url>
|
||||||
|
|
|
||||||
|
|
@ -87,6 +87,8 @@ Tags - Dendroalsia
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -95,6 +97,22 @@ Tags - Dendroalsia
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<a class="navbar-item" href="">
|
||||||
|
|
||||||
|
Post
|
||||||
|
|
||||||
|
</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<a class="navbar-item" href="/#about">About</a>
|
<a class="navbar-item" href="/#about">About</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 17 KiB |
Loading…
Add table
Add a link
Reference in a new issue