Skip to content

Commit 69857df

Browse files
authored
Add /essays/all (#3085)
I set up zola to aggregate all these and create an RSS feed for them. I also removed a couple of the essays from the /essays page in an attempt to highlight the best one for each argument (now that they can all be found on /essays/all).
1 parent db71a58 commit 69857df

4 files changed

Lines changed: 97 additions & 10 deletions

File tree

www/content/essays/_index.md

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,27 @@
11
+++
22
title = "Essays"
3+
sort_by = "date"
34
insert_anchor_links = "left"
5+
generate_feeds = true
6+
template = "essay_index.html"
47
page_template = "essay.html"
58
+++
69

710
### Hypermedia and REST
811
* [HATEOAS](@/essays/hateoas.md)
912
* [How Did REST Come To Mean The Opposite of REST?](@/essays/how-did-rest-come-to-mean-the-opposite-of-rest.md)
1013
* [Two Approaches To Decoupling](@/essays/two-approaches-to-decoupling.md)
11-
* [Hypermedia APIs vs. Data APIs](@/essays/hypermedia-apis-vs-data-apis.md)
12-
* [Splitting Your Data & Application APIs: Going Further](@/essays/splitting-your-apis.md)
1314
* [Hypermedia Clients](@/essays/hypermedia-clients.md)
1415
* [HATEOAS Is For Humans](https://intercoolerjs.org/2016/05/08/hatoeas-is-for-humans.html)
15-
* [Rescuing REST From the API Winter](https://intercoolerjs.org/2016/01/18/rescuing-rest.html)
1616
* [Taking HTML Seriously](https://intercoolerjs.org/2020/01/14/taking-html-seriously)
17-
* [REST Copypasta](@/essays/rest-copypasta.md)
1817
* [The #ViewSource Affordance](@/essays/right-click-view-source.md)
19-
* [Hypermedia Controls: Feral to Formal (ACM HT'24)](https://dl.acm.org/doi/pdf/10.1145/3648188.3675127)
2018

2119
### Why Hypermedia? Why Multi-Page Applications?
2220
* [Hypermedia On Whatever you'd Like (HOWL)](@/essays/hypermedia-on-whatever-youd-like.md)
2321
* [A Response To "Have SPAs Ruined The Web"](@/essays/a-response-to-rich-harris.md)
2422
* [When To Use Hypermedia?](@/essays/when-to-use-hypermedia.md)
2523
* [The API Churn/Security Trade-off](https://intercoolerjs.org/2016/02/17/api-churn-vs-security.html)
2624
* [Does Hypermedia Scale?](@/essays/does-hypermedia-scale.md)
27-
* [SPA Alternative](@/essays/spa-alternative.md)
2825

2926
### Real World htmx Experiences
3027
* [A Real World React to htmx Port](@/essays/a-real-world-react-to-htmx-port.md)
@@ -58,17 +55,15 @@ page_template = "essay.html"
5855
* [Why htmx Does Not Have a Build Step](@/essays/no-build-step.md)
5956
* [Is htmx Just Another JavaScript Framework?](@/essays/is-htmx-another-javascript-framework.md)
6057
* [htmx Implementation Deep Dive (Video)](https://www.youtube.com/watch?v=javGxN-h9VQ)
61-
* [Prefer If Statements to Polymorphism, etc.](@/essays/prefer-if-statements.md)
6258

63-
### Hypermedia History
59+
### Hypermedia Research
6460

6561
* [A File Structure For The Complex, The Changing and the Indeterminate (Ted Nelson, 1965)](https://dl.acm.org/doi/pdf/10.1145/800197.806036)
6662
* [The Mother Of All Demos (Doug Englebart, 1968)](https://www.youtube.com/watch?v=B6rKUf9DWRI)
6763
* [The First Web Page (1991)](http://info.cern.ch/hypertext/WWW/TheProject.html)
6864
* [Architectural Styles and the Design of Network-based Software Architectures (Roy Fielding, 2000)](https://ics.uci.edu/~fielding/pubs/dissertation/top.htm)
6965
* [State of the Art Review on Hypermedia Issues and Applications (2006)](https://paul.luon.net/hypermedia/index.html) [[archive]](https://web.archive.org/web/20240428215142/https://paul.luon.net/hypermedia/index.html)
70-
* [Interview: Henning Koch, Creator of Unpoly](@/essays/interviews/henning_koch.md)
71-
* [htmx lore](@/essays/lore.md)
66+
* [Hypermedia Controls: Feral to Formal (ACM HT'24)](https://dl.acm.org/doi/pdf/10.1145/3648188.3675127)
7267

7368
## Banners
7469
<div style="text-align: center;margin:32px">

www/content/essays/all/_index.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
+++
2+
title = "All Essays"
3+
insert_anchor_links = "left"
4+
template = "essay_all.html"
5+
+++
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
{% extends "base.html" %}
2+
3+
{% block title %}
4+
{% if section.title -%}
5+
{% set html_title = "&lt;/&gt; htmx ~ " ~ section.title -%}
6+
{% endif -%}
7+
{% set section = get_section(path="essays/_index.md") %}
8+
<link rel="alternate" type="application/rss+xml" title="RSS" href="{{ get_url(path="/essays/atom.xml", trailing_slash=false) }}">
9+
{% endblock title %}
10+
11+
12+
{% block content %}
13+
<style>
14+
ol { list-style-type: none; margin: 0; }
15+
time { padding-right: 10px; }
16+
</style>
17+
18+
<h1>All Essays</h1>
19+
20+
<h2>htmx Essays</h2>
21+
<ol>
22+
{% for page in section.pages %}
23+
<li>
24+
<time datetime={{page.date}}>{{ page.date | date(format="%b %d, %Y") }}</time>
25+
<a href="{{ page.permalink | safe }}">{{ page.title }}</a>
26+
</li>
27+
{% endfor %}
28+
</ol>
29+
30+
<h2>Ye Olde Intercooler.js Essays</h2>
31+
<ol>
32+
<li>
33+
<time datetime="2016-02-17">Jan 14, 2020</time>
34+
<a href="https://intercoolerjs.org/2020/01/14/taking-html-seriously">Take HTML Seriously</a>
35+
</li>
36+
<li>
37+
<time datetime="2016-05-08">May 08, 2016</time>
38+
<a href="https://intercoolerjs.org/2016/02/17/api-churn-vs-security.html">HATEOAS Is For Humans</a>
39+
</li>
40+
<li>
41+
<time datetime="2016-02-17">Feb 17, 2016</time>
42+
<a href="https://intercoolerjs.org/2016/02/17/api-churn-vs-security.html">The API Churn/Security Trade-off</a>
43+
</li>
44+
<li>
45+
<time datetime="2016-02-17">Jan 18, 2016</time>
46+
<a href="https://intercoolerjs.org/2016/01/18/rescuing-rest.html">Rescuing REST From the API Winter</a>
47+
</li>
48+
</ol>
49+
50+
{% endblock content %}
51+
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
{% extends "base.html" %}
2+
3+
{% block title %}
4+
{% if section.title -%}
5+
{% set html_title = "&lt;/&gt; htmx ~ " ~ section.title -%}
6+
{% endif -%}
7+
<link rel="alternate" type="application/rss+xml" title="RSS" href="{{ get_url(path="/essays/atom.xml", trailing_slash=false) }}">
8+
{% endblock title %}
9+
10+
11+
{% block content %}
12+
<style>
13+
ol { list-style-type: none; margin: 0; }
14+
time { padding-right: 10px; }
15+
</style>
16+
17+
<h3>
18+
<a class="zola-anchor" href="#most-recent" aria-label="Anchor link for: most-recent">#</a>
19+
Most Recent
20+
</h3>
21+
22+
<ol>
23+
{% for page in section.pages | slice(end=5) %}
24+
<li>
25+
<time datetime={{page.date}}>{{ page.date | date(format="%b %d, %Y") }}</time>
26+
<a href="{{ page.permalink | safe }}">{{ page.title }}</a>
27+
</li>
28+
{% endfor %}
29+
</ol>
30+
<a href="/essays/all" style="display: block; padding-top: 10px">See all essays</a>
31+
32+
{{ section.content | safe }}
33+
<div style="padding-top: 120px;padding-bottom:40px;text-align: center">
34+
&lt;/&gt;
35+
</div>
36+
{% endblock content %}

0 commit comments

Comments
 (0)