This commit is contained in:
asonix 2023-07-29 19:22:08 -05:00
parent 2846221be1
commit 223e4fa372
4 changed files with 146 additions and 104 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

View file

@ -11,15 +11,17 @@
box-sizing: border-box;
}
body {
background-color: #fff;
background-image: url('./pinkliom-small2.png');
background-position: bottom right;
background-repeat: no-repeat;
color: #000;
display: flex;
flex-direction: row-reverse;
flex-wrap: wrap;
font-family: sans-serif;
height: 100vh;
margin: 0;
background-image: url('./IMG_2171.JPG');
background-repeat: no-repeat;
background-position: bottom right;
}
header {
background-color: #232323;
@ -56,11 +58,46 @@
max-height: 100%;
overflow-y: auto;
}
main section {
max-width: 800px;
padding: 16px;
background-color: rgba(255, 255, 255, 0.8);
main a,
main a:visited {
color: #e10862;
}
main a:focus,
main a:hover,
main a:visited:focus,
main a:visited:hover {
color: #a90649;
}
.overlay {
backdrop-filter: blur(8px);
background-color: #ffffffcb;
max-width: 800px;
min-height: 100%;
}
section {
padding: 16px;
}
@media (prefers-color-scheme: dark) {
body {
background-color: #1f1f1f;
color: #e5e5e5;
}
.overlay {
background-color: #1f1f1fdd;
}
main a,
main a:visited {
color: #e10862;
}
main a:focus,
main a:hover,
main a:visited:focus,
main a:visited:hover {
color: #f83687;
}
}
@media (max-width: 700px) {
@ -69,6 +106,9 @@
height: auto;
}
header {
background-image: url('./pinkliom-small2.png');
background-repeat: no-repeat;
background-position: bottom right;
min-height: auto;
width: 100%;
overflow-x: auto;
@ -82,103 +122,105 @@
</head>
<body>
<main>
<section>
<h2>Bio</h2>
<article>
<p>
I'm an internet pinkliom with a fondness for types. Find me at the local coffee shop
writing <a href="https://rust-lang.org">#rust</a> and sometimes
<a href="https://elm-lang.org">#elm</a>. I also enjoy single-board computers. I run my
services on a small cluster of boards from <a href="https://pine64.org">#pine64</a> out of
my apartment over a residential internet connection. If this page took a while to load,
that might be why.
</p>
<p>
I have many characters, most of whom are some kind of cat. Because of this, I have many
names as well. People call me asonix (my username on most platforms), Aode (the pinkliom
himself), Tavi, and Arlo, although there's more names that are less common.
</p>
</article>
</section>
<section>
<h2>Projects</h2>
<article>
<h3>pict-rs</h3>
<p><em><a href="https://git.asonix.dog/asonix/pict-rs">pict-rs on Forgejo</a></em></p>
<p>
pict-rs is a simple image hosting service. It started in 2020 as a replacement for
<a href="https://github.com/HaschekSolutions/pictshare">#pictshare</a> in
<a href="https://github.com/LemmyNet/lemmy/">#Lemmy</a>, a federated reddit alternative.
While I have contributed to Lemmy in the past, and pict-rs grew out of a need for a better
image hosting solution, pict-rs is an independent project that I maintain for use outside
of Lemmy. One of my goals is to build a federated art gallery platform, and having solid
image hosting is an important part of that goal.
</p>
<p>
The current stable series for pict-rs is 0.4, although 0.5 is well in development at this
point. Plans for the 0.5 release include enabling high-availability with a postgres
backend. The current backend for metadata is an embedded key-value store called
<a href="https://github.com/spacejam/sled">#sled</a>. Sled is not going away for pict-rs,
but supporting multiple metadata repositories has been a goal I've been working towards
for a while.
</p>
</article>
<article>
<h3>AodeRelay</h3>
<p><em><a href="https://git.asonix.dog/asonix/relay">AodeRelay on Forgejo</a></em></p>
<p>
AodeRelay was my first real fediverse project. It's an
<a href="https://www.w3.org/TR/activitypub/">#ActivityPub</a> server whose purpose is to
forward posts between other subscribed servers. I built this initially to learn more about
ActivityPub, while also contributing to the greater ActivityPub ecosystem. My own instance
of this relay forwards about 7 messages every minute, which doesn't seem like much, but it
translates to 700 outbound requests per minute (one for each subscribed server for each
message), totalling around 1 million outbound requests per day. It does this with a limit
of two CPUs on one of my single-board computers.
</p>
</article>
<article>
<h3>Various Libraries</h3>
<p>
In addition to the applications mentioned above, I maintain a few notable libraries:
</p>
<ul>
<li>
<a href="https://git.asonix.dog/asonix/activitystreams">activitystreams</a>, a library
for parsing and generating valid ActivityStreams JSON objects
</li>
<li>
<a href="https://git.asonix.dog/asonix/actix-form-data">actix-form-data</a>, a library
for handling uploaded <code>multipart/formdata</code> in actix-web
</li>
<li>
<a href="https://git.asonix.dog/asonix/actix-webfinger">actix-webfinger</a>, a library
for making and serving requests for webfinger in actix-web
</li>
<li>
<a href="https://git.asonix.dog/asonix/actix-ws">actix-ws</a>, a library for managing
websocket connections in actix-web without the actix actor framework
</li>
<li>
<a href="https://git.asonix.dog/asonix/background-jobs">background-jobs</a>, a library
for managing retryable tasks that run in the background of an application
</li>
<li>
<a href="https://git.asonix.dog/asonix/http-signature-nromalization">
http-signature-nromalization
</a>, a library implementing the HTTP Signatures IETF draft
</li>
<li>
<a href="https://git.asonix.dog/asonix/tracing-awc">tracing-awc</a>, a library for
adding traces to the awc HTTP client library
</li>
</ul>
<p>
These libraries are mostly in service of building federated web applications, although the
<code>actix-ws</code> library was created just to see if I could.
</p>
</article>
</section>
<div class="overlay">
<section>
<h2>Bio</h2>
<article>
<p>
I'm an internet pinkliom with a fondness for types. Find me at the local coffee shop
writing <a href="https://rust-lang.org">#rust</a> and sometimes
<a href="https://elm-lang.org">#elm</a>. I also enjoy single-board computers. I run my
services on a small cluster of boards from <a href="https://pine64.org">#pine64</a> out of
my apartment over a residential internet connection. If this page took a while to load,
that might be why.
</p>
<p>
I have many characters, most of whom are some kind of cat. Because of this, I have many
names as well. People call me asonix (my username on most platforms), Aode (the pinkliom
himself), Tavi, and Arlo, although there's more names that are less common.
</p>
</article>
</section>
<section>
<h2>Projects</h2>
<article>
<h3>pict-rs</h3>
<p><em><a href="https://git.asonix.dog/asonix/pict-rs">pict-rs on Forgejo</a></em></p>
<p>
pict-rs is a simple image hosting service. It started in 2020 as a replacement for
<a href="https://github.com/HaschekSolutions/pictshare">#pictshare</a> in
<a href="https://github.com/LemmyNet/lemmy/">#Lemmy</a>, a federated reddit alternative.
While I have contributed to Lemmy in the past, and pict-rs grew out of a need for a better
image hosting solution, pict-rs is an independent project that I maintain for use outside
of Lemmy. One of my goals is to build a federated art gallery platform, and having solid
image hosting is an important part of that goal.
</p>
<p>
The current stable series for pict-rs is 0.4, although 0.5 is well in development at this
point. Plans for the 0.5 release include enabling high-availability with a postgres
backend. The current backend for metadata is an embedded key-value store called
<a href="https://github.com/spacejam/sled">#sled</a>. Sled is not going away for pict-rs,
but supporting multiple metadata repositories has been a goal I've been working towards
for a while.
</p>
</article>
<article>
<h3>AodeRelay</h3>
<p><em><a href="https://git.asonix.dog/asonix/relay">AodeRelay on Forgejo</a></em></p>
<p>
AodeRelay was my first real fediverse project. It's an
<a href="https://www.w3.org/TR/activitypub/">#ActivityPub</a> server whose purpose is to
forward posts between other subscribed servers. I built this initially to learn more about
ActivityPub, while also contributing to the greater ActivityPub ecosystem. My own instance
of this relay forwards about 7 messages every minute, which doesn't seem like much, but it
translates to 700 outbound requests per minute (one for each subscribed server for each
message), totalling around 1 million outbound requests per day. It does this with a limit
of two CPUs on one of my single-board computers.
</p>
</article>
<article>
<h3>Various Libraries</h3>
<p>
In addition to the applications mentioned above, I maintain a few notable libraries:
</p>
<ul>
<li>
<a href="https://git.asonix.dog/asonix/activitystreams">activitystreams</a>, a library
for parsing and generating valid ActivityStreams JSON objects
</li>
<li>
<a href="https://git.asonix.dog/asonix/actix-form-data">actix-form-data</a>, a library
for handling uploaded <code>multipart/formdata</code> in actix-web
</li>
<li>
<a href="https://git.asonix.dog/asonix/actix-webfinger">actix-webfinger</a>, a library
for making and serving requests for webfinger in actix-web
</li>
<li>
<a href="https://git.asonix.dog/asonix/actix-ws">actix-ws</a>, a library for managing
websocket connections in actix-web without the actix actor framework
</li>
<li>
<a href="https://git.asonix.dog/asonix/background-jobs">background-jobs</a>, a library
for managing retryable tasks that run in the background of an application
</li>
<li>
<a href="https://git.asonix.dog/asonix/http-signature-nromalization">
http-signature-nromalization
</a>, a library implementing the HTTP Signatures IETF draft
</li>
<li>
<a href="https://git.asonix.dog/asonix/tracing-awc">tracing-awc</a>, a library for
adding traces to the awc HTTP client library
</li>
</ul>
<p>
These libraries are mostly in service of building federated web applications, although the
<code>actix-ws</code> library was created just to see if I could.
</p>
</article>
</section>
</div>
</main>
<header>
<h2>Links</h2>

BIN
pinkliom-small2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

BIN
pinkliom.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 294 KiB