summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--about/index.html4
-rw-r--r--blog/hsm-basics/index.html4
-rw-r--r--blog/ihsm-worlds-first-diy-hsm/index.html4
-rw-r--r--blog/index.html4
-rw-r--r--blog/kicad-mesh-plugin/index.html4
-rw-r--r--blog/led-characterization/index.html4
-rw-r--r--blog/multichannel-led-driver/index.html4
-rw-r--r--blog/private-contact-discovery/index.html4
-rw-r--r--blog/serial-protocols/index.html4
-rw-r--r--blog/telekom-gpon-sfp/index.html4
-rw-r--r--blog/thors-hammer/index.html4
-rw-r--r--blog/wifi-led-driver/index.html4
-rw-r--r--categories/index.html4
-rw-r--r--imprint/index.html4
-rw-r--r--index.html46
-rw-r--r--posts/index.html4
-rw-r--r--projects/gerbolyze/index.html10
-rw-r--r--projects/gerbonara/index.html10
-rw-r--r--projects/index.html13
-rw-r--r--projects/lolcat-c/index.html9
-rw-r--r--projects/python-mpv/index.html10
-rw-r--r--projects/svg-flatten/index.html9
-rw-r--r--projects/wsdiff/index.html9
-rw-r--r--style.css44
24 files changed, 150 insertions, 70 deletions
diff --git a/about/index.html b/about/index.html
index c5c740b..3f0ce95 100644
--- a/about/index.html
+++ b/about/index.html
@@ -65,8 +65,8 @@ internet, but please consider these keys revoked, and do not use them to encrypt
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/blog/hsm-basics/index.html b/blog/hsm-basics/index.html
index 38de3f8..fd2b132 100644
--- a/blog/hsm-basics/index.html
+++ b/blog/hsm-basics/index.html
@@ -222,8 +222,8 @@ while not providing better sensitivity.</p>
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/blog/ihsm-worlds-first-diy-hsm/index.html b/blog/ihsm-worlds-first-diy-hsm/index.html
index 56f4c9a..db95329 100644
--- a/blog/ihsm-worlds-first-diy-hsm/index.html
+++ b/blog/ihsm-worlds-first-diy-hsm/index.html
@@ -63,8 +63,8 @@ focusing our effort on the next iteration of the design instead. Stay tuned for
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/blog/index.html b/blog/index.html
index 97d6385..bf5ee2a 100644
--- a/blog/index.html
+++ b/blog/index.html
@@ -121,8 +121,8 @@ Your browser does not support the HTML5 video tag. A demonstration of the comple
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/blog/kicad-mesh-plugin/index.html b/blog/kicad-mesh-plugin/index.html
index bd0b649..ab3e5c8 100644
--- a/blog/kicad-mesh-plugin/index.html
+++ b/blog/kicad-mesh-plugin/index.html
@@ -195,8 +195,8 @@ making a copy of the board file first and treating mesh generation as a non-reve
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/blog/led-characterization/index.html b/blog/led-characterization/index.html
index f7963d2..03f6f8e 100644
--- a/blog/led-characterization/index.html
+++ b/blog/led-characterization/index.html
@@ -413,8 +413,8 @@ can view the Jupyter notebook most of the analysis above <a class="reference ext
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/blog/multichannel-led-driver/index.html b/blog/multichannel-led-driver/index.html
index 2454330..6a6959b 100644
--- a/blog/multichannel-led-driver/index.html
+++ b/blog/multichannel-led-driver/index.html
@@ -364,8 +364,8 @@ analyze the brightness measurement data <a class="reference external" href="http
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/blog/private-contact-discovery/index.html b/blog/private-contact-discovery/index.html
index e143e74..ed711bb 100644
--- a/blog/private-contact-discovery/index.html
+++ b/blog/private-contact-discovery/index.html
@@ -62,8 +62,8 @@ accountability issues by simply not producing as much sensitive data in the firs
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/blog/serial-protocols/index.html b/blog/serial-protocols/index.html
index 2ec355d..8f72192 100644
--- a/blog/serial-protocols/index.html
+++ b/blog/serial-protocols/index.html
@@ -233,8 +233,8 @@ want to set a large framebuffer in pieces, do it in a <a class="reference extern
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/blog/telekom-gpon-sfp/index.html b/blog/telekom-gpon-sfp/index.html
index 1ccbde2..ada35b6 100644
--- a/blog/telekom-gpon-sfp/index.html
+++ b/blog/telekom-gpon-sfp/index.html
@@ -208,8 +208,8 @@ collected <a class="reference external" href="https://github.com/xvzf/zyxel-gpon
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/blog/thors-hammer/index.html b/blog/thors-hammer/index.html
index 38894eb..4e3358e 100644
--- a/blog/thors-hammer/index.html
+++ b/blog/thors-hammer/index.html
@@ -70,8 +70,8 @@ board as shims between the plunger and the case to limit the plunger's travel in
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/blog/wifi-led-driver/index.html b/blog/wifi-led-driver/index.html
index 9df77fe..70e1785 100644
--- a/blog/wifi-led-driver/index.html
+++ b/blog/wifi-led-driver/index.html
@@ -127,8 +127,8 @@ violence.</p>
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/categories/index.html b/categories/index.html
index ff3e1ef..0a23ce2 100644
--- a/categories/index.html
+++ b/categories/index.html
@@ -31,8 +31,8 @@
<main class="cards">
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/imprint/index.html b/imprint/index.html
index 4790aca..3fabab5 100644
--- a/imprint/index.html
+++ b/imprint/index.html
@@ -112,8 +112,8 @@ Schritten verfolgt.</p>
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/index.html b/index.html
index 7a59b80..43c6df7 100644
--- a/index.html
+++ b/index.html
@@ -36,10 +36,8 @@ projects on the projects page. On the top right of this page, there are links to
pages. If you want to learn more about me, head over to the about page.</p>
</div>
</div>
-
- <h2>Recently updated projects</h2>
-
- <div class="card"><h2><a href="/projects/gerbolyze/">Gerbolyze</a></h2>
+ <h2>Recently updated projects</h2>
+ <div class="card"><h2><a href="/projects/gerbolyze/">Gerbolyze</a></h2>
<div class="summary">
<div class="document">
@@ -53,11 +51,11 @@ pages. If you want to learn more about me, head over to the about page.</p>
<a href="https://git.jaseg.de/gerbolyze.git">Sources</a>
<a href="https://github.com/jaseg/gerbolyze/issues">Issues</a>
<a href="https://gerbolyze.gitlab.io/gerbolyze">Docs</a>
- <a href="https://pypi.org/projects/gerbolyze">PyPI</a>
+ <a href="https://pypi.org/project/gerbolyze">PyPI</a>
</div>
</div>
- <div class="card"><h2><a href="/projects/gerbonara/">Gerbonara</a></h2>
+ <div class="card"><h2><a href="/projects/gerbonara/">Gerbonara</a></h2>
<div class="summary">
<div class="document">
@@ -71,14 +69,16 @@ pages. If you want to learn more about me, head over to the about page.</p>
<a href="https://git.jaseg.de/gerbonara.git">Sources</a>
<a href="https://gitlab.com/gerbolyze/gerbonara/issues">Issues</a>
<a href="https://gerbolyze.gitlab.io/gerbonara">Docs</a>
- <a href="https://pypi.org/projects/gerbonara">PyPI</a>
+ <a href="https://pypi.org/project/gerbonara">PyPI</a>
</div>
</div>
- <h2>Blog</h2>
-
- <div class="card"><h2><a href="/blog/telekom-gpon-sfp/">Ubiquiti EdgeRouter on Deutsche Telekom GPON Fiber</a></h2><strong>2022-02-21</strong>
+ <div class="pagination-links">
+ <a href="/projects/">See more<span class="arrow-right"></span></a>
+ </div>
+ <h2>Blog</h2>
+ <div class="card"><h2><a href="/blog/telekom-gpon-sfp/">Ubiquiti EdgeRouter on Deutsche Telekom GPON Fiber</a></h2><strong>2022-02-21</strong>
<div class="summary">
Disclaimer I provide this guide as a reference for other knowledgeable users without any warranty. Please feel free to use this as a resource but do not hold me responsible if this does not work for you. There is a significant chance that due to an error on my side or due to Telekom changing their setup this guide will not work for you, and you may end up having to pay for an unsuccessful Telekom technician visit.
@@ -86,7 +86,7 @@ pages. If you want to learn more about me, head over to the about page.</p>
</div>
</div>
- <div class="card"><h2><a href="/blog/ihsm-worlds-first-diy-hsm/">New Paper on Inertial Hardware Security Modules</a></h2><strong>2021-11-23</strong>
+ <div class="card"><h2><a href="/blog/ihsm-worlds-first-diy-hsm/">New Paper on Inertial Hardware Security Modules</a></h2><strong>2021-11-23</strong>
<div class="summary">
World's First DIY HSM Last week, Prof. Dr. Björn Scheuermann and I have published our first joint paper on Hardware Security Modules. In our paper, we introduce Inertial Hardware Security Modules (IHSMs), a new way of building high-security HSMs from basic components. I think the technology we demonstrate in our paper might allow some neat applications where some civil organization deploys a service that no one, not even they themselves, can snoop on.
@@ -94,7 +94,7 @@ pages. If you want to learn more about me, head over to the about page.</p>
</div>
</div>
- <div class="card"><h2><a href="/blog/kicad-mesh-plugin/">Kicad Mesh Plugin</a></h2><strong>2020-08-18</strong>
+ <div class="card"><h2><a href="/blog/kicad-mesh-plugin/">Kicad Mesh Plugin</a></h2><strong>2020-08-18</strong>
<div class="summary">
Tamper Detection Meshes Cryptography is at the foundation of our modern, networked world. From email to card payment infrastructure in brick and mortar stores, cryptographic keys secure almost every part of our digital lives againts cybercriminals or curious surveillance capitalists. Without cryptography, many of the things we routinely do in our lives such as paying for groceries with a credit card, messaging a friend on Signal or unlocking a car with its keyfob would not be possible.
@@ -102,7 +102,7 @@ pages. If you want to learn more about me, head over to the about page.</p>
</div>
</div>
- <div class="card"><h2><a href="/blog/private-contact-discovery/">Private Contact Discovery</a></h2><strong>2019-06-22</strong>
+ <div class="card"><h2><a href="/blog/private-contact-discovery/">Private Contact Discovery</a></h2><strong>2019-06-22</strong>
<div class="summary">
Private Contact Discovery Private Contact Discovery (PCD) is the formal name for the problem modern smartphone messenger applications have on installation: Given a user's address book, find out which of their contacts also use the same messenger without the messenger's servers learning anything about the user's address book. The widespread non-private way to do this is to simply upload the user's address book to the app's operator's servers and do an SQL JOIN keyed on the phone number field against the database of registered users.
@@ -110,7 +110,7 @@ pages. If you want to learn more about me, head over to the about page.</p>
</div>
</div>
- <div class="card"><h2><a href="/blog/hsm-basics/">Hardware Security Module Basics</a></h2><strong>2019-05-17</strong>
+ <div class="card"><h2><a href="/blog/hsm-basics/">Hardware Security Module Basics</a></h2><strong>2019-05-17</strong>
<div class="summary">
Hardware Security Modules and Security Research and Cryptography On May 17 2019 I gave a short presentation on the fundamentals of hardware security modules at the weekly seminar of Prof. Mori's security research working group at Waseda University. The motivation for this was that outside of low-level hardware security people and people working in the financial industry HSMs are not thought about that often. In particular most network or systems security people would not consider them an option.
@@ -118,7 +118,7 @@ pages. If you want to learn more about me, head over to the about page.</p>
</div>
</div>
- <div class="card"><h2><a href="/blog/serial-protocols/">How to talk to your microcontroller over serial</a></h2><strong>2018-05-19</strong>
+ <div class="card"><h2><a href="/blog/serial-protocols/">How to talk to your microcontroller over serial</a></h2><strong>2018-05-19</strong>
<div class="summary">
Scroll to the end for the TL;DR.
@@ -128,7 +128,7 @@ If you have done low-level microcontroller firmware you will regularly have had
</div>
</div>
- <div class="card"><h2><a href="/blog/thors-hammer/">Thor&#39;s Hammer</a></h2><strong>2018-05-03</strong>
+ <div class="card"><h2><a href="/blog/thors-hammer/">Thor&#39;s Hammer</a></h2><strong>2018-05-03</strong>
<div class="summary">
In case you were having an inferiority complex because your friends' IBM Model M keyboards are so much louder than the shitty rubber dome freebie you got with your pc... Here's the solution: Thor's Hammer, a simple typing cadence enhancer for PS/2 keyboards.
@@ -137,7 +137,7 @@ Your browser does not support the HTML5 video tag. A demonstration of the comple
</div>
</div>
- <div class="card"><h2><a href="/blog/multichannel-led-driver/">32-Channel LED tape driver</a></h2><strong>2018-05-02</strong>
+ <div class="card"><h2><a href="/blog/multichannel-led-driver/">32-Channel LED tape driver</a></h2><strong>2018-05-02</strong>
<div class="summary">
Theoretical basics Together, a friend and I outfitted the small staircase at Berlin's Chaos Computer Club with nice, shiny RGB-WW LED tape for ambient lighting. This tape is like regular RGB tape but with an additional warm white channel, which makes for much more natural pastels and whites. There are several variants of RGBW tape. Cheap ones have separate RGB and white LEDs, which is fine for indirect lighting but does not work for direct lighting.
@@ -145,7 +145,7 @@ Your browser does not support the HTML5 video tag. A demonstration of the comple
</div>
</div>
- <div class="card"><h2><a href="/blog/wifi-led-driver/">Wifi Led Driver</a></h2><strong>2018-05-02</strong>
+ <div class="card"><h2><a href="/blog/wifi-led-driver/">Wifi Led Driver</a></h2><strong>2018-05-02</strong>
<div class="summary">
Project motivation The completed driver board installed in the 3D-printed case. This device can now be connected to 12V and two segments of LED tape that can then be controlled trough Wifi. The ESP8266 module goes on the pin header on the left and was removed for this picture. After the multichannel LED driver was completed, I was just getting used to controlling LEDs at 14-bit resolution. I liked the board we designed in this project, but at 32 channels it was a bit large for most use cases.
@@ -153,7 +153,7 @@ Your browser does not support the HTML5 video tag. A demonstration of the comple
</div>
</div>
- <div class="card"><h2><a href="/blog/led-characterization/">LED Characterization</a></h2><strong>2018-05-02</strong>
+ <div class="card"><h2><a href="/blog/led-characterization/">LED Characterization</a></h2><strong>2018-05-02</strong>
<div class="summary">
Preface Recently, I have been working on a small driver for ambient lighting using 12V LED strips like you can get inexpensively from China. I wanted to be able to just throw one of these somewhere, stick down some LED tape, hook it up to a small transformer and be able to control it through Wifi. When I was writing the firmware, I noticed that when fading between different colors, the colors look all wrong!
@@ -161,10 +161,14 @@ Your browser does not support the HTML5 video tag. A demonstration of the comple
</div>
</div>
+
+ <div class="pagination-links">
+ <a href="/blog/">See more<span class="arrow-right"></span></a>
+ </div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/posts/index.html b/posts/index.html
index e3d81d0..d806ebd 100644
--- a/posts/index.html
+++ b/posts/index.html
@@ -31,8 +31,8 @@
<main class="cards">
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/projects/gerbolyze/index.html b/projects/gerbolyze/index.html
index d17382c..6090587 100644
--- a/projects/gerbolyze/index.html
+++ b/projects/gerbolyze/index.html
@@ -30,6 +30,12 @@
</header>
<main>
+ <div class="links">
+ <a href="https://git.jaseg.de/gerbolyze.git">Sources</a>
+ <a href="https://github.com/jaseg/gerbolyze/issues">Issues</a>
+ <a href="https://gerbolyze.gitlab.io/gerbolyze">Docs</a>
+ <a href="https://pypi.org/project/gerbolyze">PyPI</a>
+ </div>
<div class="document">
@@ -626,8 +632,8 @@ avoid that so the default license is still AGPL.</p>
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/projects/gerbonara/index.html b/projects/gerbonara/index.html
index 65ec965..3812802 100644
--- a/projects/gerbonara/index.html
+++ b/projects/gerbonara/index.html
@@ -30,6 +30,12 @@
</header>
<main>
+ <div class="links">
+ <a href="https://git.jaseg.de/gerbonara.git">Sources</a>
+ <a href="https://gitlab.com/gerbolyze/gerbonara/issues">Issues</a>
+ <a href="https://gerbolyze.gitlab.io/gerbonara">Docs</a>
+ <a href="https://pypi.org/project/gerbonara">PyPI</a>
+ </div>
<div class="document">
@@ -141,8 +147,8 @@ some non-standard naming convention.</p>
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/projects/index.html b/projects/index.html
index ca8fd63..e811e3d 100644
--- a/projects/index.html
+++ b/projects/index.html
@@ -52,7 +52,7 @@ open an issue on the project's issue tracker.</p>
<a href="https://git.jaseg.de/gerbolyze.git">Sources</a>
<a href="https://github.com/jaseg/gerbolyze/issues">Issues</a>
<a href="https://gerbolyze.gitlab.io/gerbolyze">Docs</a>
- <a href="https://pypi.org/projects/gerbolyze">PyPI</a>
+ <a href="https://pypi.org/project/gerbolyze">PyPI</a>
</div>
</div>
@@ -70,7 +70,7 @@ open an issue on the project's issue tracker.</p>
<a href="https://git.jaseg.de/gerbonara.git">Sources</a>
<a href="https://gitlab.com/gerbolyze/gerbonara/issues">Issues</a>
<a href="https://gerbolyze.gitlab.io/gerbonara">Docs</a>
- <a href="https://pypi.org/projects/gerbonara">PyPI</a>
+ <a href="https://pypi.org/project/gerbonara">PyPI</a>
</div>
</div>
@@ -86,6 +86,7 @@ open an issue on the project's issue tracker.</p>
</div>
<div class="links">
<a href="https://git.jaseg.de/lolcat.git">Sources</a>
+ <a href="https://github.com/jaseg/lolcat">Github</a>
<a href="https://github.com/jaseg/lolcat/issues">Issues</a>
</div>
</div>
@@ -104,7 +105,7 @@ open an issue on the project's issue tracker.</p>
<a href="https://git.jaseg.de/python-mpv.git">Sources</a>
<a href="https://github.com/jaseg/python-mpv/issues">Issues</a>
<a href="https://neinseg.gitlab.io/python-mpv">Docs</a>
- <a href="https://pypi.org/projects/mpv">PyPI</a>
+ <a href="https://pypi.org/project/mpv">PyPI</a>
</div>
</div>
@@ -138,14 +139,14 @@ open an issue on the project's issue tracker.</p>
<div class="links">
<a href="https://git.jaseg.de/wsdiff.git">Sources</a>
<a href="https://github.com/jaseg/wsdiff/issues">Issues</a>
- <a href="https://pypi.org/projects/wsdiff">Docs</a>
+ <a href="https://pypi.org/project/wsdiff">PyPI</a>
</div>
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/projects/lolcat-c/index.html b/projects/lolcat-c/index.html
index 161580f..5b17be2 100644
--- a/projects/lolcat-c/index.html
+++ b/projects/lolcat-c/index.html
@@ -30,6 +30,11 @@
</header>
<main>
+ <div class="links">
+ <a href="https://git.jaseg.de/lolcat.git">Sources</a>
+ <a href="https://github.com/jaseg/lolcat">Github</a>
+ <a href="https://github.com/jaseg/lolcat/issues">Issues</a>
+ </div>
<div class="document">
@@ -109,8 +114,8 @@
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/projects/python-mpv/index.html b/projects/python-mpv/index.html
index 46dbb4b..650141d 100644
--- a/projects/python-mpv/index.html
+++ b/projects/python-mpv/index.html
@@ -30,6 +30,12 @@
</header>
<main>
+ <div class="links">
+ <a href="https://git.jaseg.de/python-mpv.git">Sources</a>
+ <a href="https://github.com/jaseg/python-mpv/issues">Issues</a>
+ <a href="https://neinseg.gitlab.io/python-mpv">Docs</a>
+ <a href="https://pypi.org/project/mpv">PyPI</a>
+ </div>
<div class="document">
@@ -384,8 +390,8 @@ For details, see <a class="reference external" href="https://github.com/mpv-play
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/projects/svg-flatten/index.html b/projects/svg-flatten/index.html
index fcc67be..59bf133 100644
--- a/projects/svg-flatten/index.html
+++ b/projects/svg-flatten/index.html
@@ -30,6 +30,11 @@
</header>
<main>
+ <div class="links">
+ <a href="https://git.jaseg.de/gerbolyze.git/tree/svg-flatten?h=main">Sources</a>
+ <a href="https://github.com/jaseg/gerbolyze/issues">Issues</a>
+ <a href="https://gerbolyze.gitlab.io/svg-flatten">Docs</a>
+ </div>
<div class="document">
@@ -37,8 +42,8 @@
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/projects/wsdiff/index.html b/projects/wsdiff/index.html
index e7deab5..6af4c3c 100644
--- a/projects/wsdiff/index.html
+++ b/projects/wsdiff/index.html
@@ -30,6 +30,11 @@
</header>
<main>
+ <div class="links">
+ <a href="https://git.jaseg.de/wsdiff.git">Sources</a>
+ <a href="https://github.com/jaseg/wsdiff/issues">Issues</a>
+ <a href="https://pypi.org/project/wsdiff">PyPI</a>
+ </div>
<div class="document">
@@ -82,8 +87,8 @@ on available screen space.</p>
</div>
</main><footer>
Copyright © 2023 Jan Sebastian Götte
- / <a href="http://jaseg.de/about/">About</a>
- / <a href="http://jaseg.de/imprint/">Imprint</a>
+ / <a href="/about/">About</a>
+ / <a href="/imprint/">Imprint</a>
</footer>
</body>
</html>
diff --git a/style.css b/style.css
index 86e02bf..701fe7b 100644
--- a/style.css
+++ b/style.css
@@ -214,12 +214,36 @@ main.cards {
background-color: #1f232a;
}
+.pagination-links {
+ width: 100%;
+ display: flex;
+ justify-content: center;
+ align-items: stretch;
+}
+
+.pagination-links > a {
+ background-color: #272c35;
+ box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.2);
+ padding: 10px 20px 10px 20px;
+}
+
+.arrow-right {
+ display: inline-block;
+ width: 0;
+ height: 0;
+ border-top: .3rem solid transparent;
+ border-bottom: .3rem solid transparent;
+ border-left: .3rem solid ;
+ margin-bottom: .05rem;
+ margin-left: 5px;
+}
+
.card {
background-color: #272c35;
box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.2);
padding: 30px 20px 30px 20px;
margin-top: 50px;
-
+ margin-bottom: 30px;
}
.card > .links {
@@ -239,6 +263,24 @@ main.cards {
text-align: center;
}
+main > .links {
+ margin: 20px 0px 40px 0px;
+ border: 0.5px dotted rgba(255, 255, 255, 0.3);
+ border-left: none;
+ border-right: none;
+ width: calc(100%);
+ max-width: calc(100%);
+ display: flex;
+ flex-flow: row wrap;
+ justify-content: space-around;
+}
+
+main > .links > a {
+ padding: 10px 10px 10px 10px;
+ flex-grow: 1;
+ text-align: center;
+}
+
/* un-mess-up rst2html output */
.card > .summary > .document, .card > .summary > .document > p {
display: inline;