chore: update uses page 7e14727e
Steve · 2026-05-01 22:38 11 file(s) · +94 −48
src/assets/edc-images/beelink-ser8.jpg (added) +0 −0

Binary file — no preview.

src/assets/edc-images/fujifilm-xe4.jpg (added) +0 −0

Binary file — no preview.

src/assets/edc-images/macbook-pro.jpg (added) +0 −0

Binary file — no preview.

src/assets/edc-images/mx-master-3s.jpg (added) +0 −0

Binary file — no preview.

src/assets/edc-images/nikon-m5-monarch.jpg (added) +0 −0

Binary file — no preview.

src/assets/edc-images/zsa-voyager.jpg (added) +0 −0

Binary file — no preview.

src/content/pages/uses.md +45 −31
4 4
5 5
## Hardware/Gear
6 6
7 -
<!-- // Image of macbook -->
7 +
### M4 Macbook Pro
8 +
9 +
![macbook pro](../../assets/edc-images/macbook-pro.jpg)
8 10
9 11
Primary computer is a M4 Macbook Pro, and as much as I would love to go Linux full time, it's hard to justify getting rid of this thing. The performance and battery are just too good to pass up now, but I've been keeping my eye on Framework and their new Pro series.
10 12
11 -
<!-- // Image of Beelink -->
13 +
### Beelink SER8
14 +
15 +
![beelink ser8](../../assets/edc-images/beelink-ser8.jpg)
12 16
13 17
I also have a small Beelink SER8 that acts like my Linux desktop / home server, and it's an absolute champ. 1TB SSD, 32GB Ram, and since it's running Arch with zero desktop manager by default, the energy and CPU footprint is razor thin. Opening up `btop` makes you wonder if it's doing anything at all, but in reality it's running over 12 different apps over the web through Cloudflare tunnels. If at any point I need to use it as a desktop I just start up `mango` as my compositor and even then the memory and CPU footprint is minimal. I just love this thing.
14 18
15 -
<!-- // Image of MX Master 3 -->
19 +
### Logitech MX Master 3S
20 +
21 +
![mx master 3s](../../assets/edc-images/mx-master-3s.jpg)
16 22
17 23
Daily use mouse is the MX Master 3s; can't go wrong.
18 24
19 -
<!-- // Image of ZSA Voyager  -->
25 +
### ZSA Voyager
26 +
27 +
![zsa voyager](../../assets/edc-images/zsa-voyager.jpg)
20 28
21 29
I've done several custom keyboards over the years which is such a fun hobby, but unfortunately I had to switch to a split keyboard due to my wrists. At the time the need was pretty dire and I needed instant relief, so I went with the ZSA Voyager.
22 30
23 -
<!-- // Image FujiFilm XE4 -->
31 +
### FujiFilm XE4
32 +
33 +
![fujifilm xe4](../../assets/edc-images/fujifilm-xe4.jpg)
24 34
25 35
Been doing photography for over a decade and in this stage of my life the FujiFilm XE4 fits my needs perfectly. The last thing I want to spend time doing is editing photos; I just don't have the time like I used to. The film simulations on this camera are so good I just shoot JPEGs and pull them straight out of the camera; no editing at all. If you want to see some samples check out my [photography site](https://steve.photo).
26 36
27 -
<!-- // Image of Nikon Monarchs  -->
37 +
### Nikon Monarch M5 8x42
38 +
39 +
![nikon monarch m5](../../assets/edc-images/nikon-m5-monarch.jpg)
28 40
29 41
As I started getting into bird watching more I decided to invest in some binoculars, and the Nikon Monarch M5 8x42 are fantastic. Rugged, waterproof, and very decent optics for the price point. For those getting into bird watching I highly recommend getting a nice pair of binoculars, it really does kick the experience up a notch.
30 42
32 44
33 45
Here's a quick list of some of the primary software I use on a day to day basis.
34 46
35 -
- [Wezterm](https://wezterm.org/index.html) - Terminal Emulator
36 -
- [Nushell](https://www.nushell.sh/) - Default shell (I know, I'm weird)
37 -
- [Berkeley Mono](https://usgraphics.com/products/berkeley-mono) - Primary font choice
38 -
- [Commitmono](https://commitmono.com/) - Secondary font choice (used in projects)
39 -
- [Starship](https://starship.rs/) - Shell prompt
40 -
- [Fling](https://github.com/bbkane/fling) - Dotfile management
41 -
- [Neovim](https://neovim.io/) - Text editor
42 -
- [Tmux](https://github.com/tmux/tmux) - Terminal multiplexer
43 -
- [Sesh](https://github.com/joshmedeski/sesh) - Tmux session manager
44 -
- [Yazi](https://github.com/sxyazi/yazi) - File browser
45 -
- [btop](https://github.com/aristocratos/btop) - Resource monitor
46 -
- [Lazygit](https://github.com/jesseduffield/lazygit) - Git TUI
47 -
- [Gum](https://github.com/charmbracelet/gum) - Scripting utilities
48 -
- [Mango](https://github.com/mangowm/mango) - Wayland Compositor / Window manager (Arch)
49 -
- [Helium](https://helium.computer) - Web Browser
50 -
- [Macchina](https://github.com/Macchina-CLI/macchina) - System information frontend
51 -
- [Jotts](https://andromeda.build/apps/jotts) - Minimal markdown notepad
52 -
- [Feeds](https://andromeda.build/apps/feeds) - RSS aggregator and reader
53 -
- [Posts](https://andromeda.build/apps/posts) - Micro blogging
54 -
- [Cellar](https://andromeda.build/apps/cellar) - Wine log
55 -
- [Library](https://andromeda.build/apps/library) - Book log
56 -
- [Bookmarks](https://andromeda.build/apps/bookmarks) - Link manager
57 -
- [Sipp](https://andromeda.build/apps/sipp) - Code snippets
58 -
- [Shrink](https://andromeda.build/apps/shrink) - Image resizing
59 -
- [OG](https://andromeda.build/apps/og) - Opengraph Preview
47 +
| Application | Description |
48 +
|---|---|
49 +
| [Wezterm](https://wezterm.org/index.html) | Terminal Emulator |
50 +
| [Nushell](https://www.nushell.sh/) | Default shell (I know, I'm weird) |
51 +
| [Berkeley Mono](https://usgraphics.com/products/berkeley-mono) | Primary font choice |
52 +
| [Commitmono](https://commitmono.com/) | Secondary font choice (used in projects) |
53 +
| [Starship](https://starship.rs/) | Shell prompt |
54 +
| [Fling](https://github.com/bbkane/fling) | Dotfile management |
55 +
| [Neovim](https://neovim.io/) | Text editor |
56 +
| [Tmux](https://github.com/tmux/tmux) | Terminal multiplexer |
57 +
| [Sesh](https://github.com/joshmedeski/sesh) | Tmux session manager |
58 +
| [Yazi](https://github.com/sxyazi/yazi) | File browser |
59 +
| [btop](https://github.com/aristocratos/btop) | Resource monitor |
60 +
| [Lazygit](https://github.com/jesseduffield/lazygit) | Git TUI |
61 +
| [Gum](https://github.com/charmbracelet/gum) | Scripting utilities |
62 +
| [Mango](https://github.com/mangowm/mango) | Wayland Compositor / Window manager (Arch) |
63 +
| [Helium](https://helium.computer) | Web Browser |
64 +
| [Macchina](https://github.com/Macchina-CLI/macchina) | System information frontend |
65 +
| [Jotts](https://andromeda.build/apps/jotts) | Minimal markdown notepad |
66 +
| [Feeds](https://andromeda.build/apps/feeds) | RSS aggregator and reader |
67 +
| [Posts](https://andromeda.build/apps/posts) | Micro blogging |
68 +
| [Cellar](https://andromeda.build/apps/cellar) | Wine log |
69 +
| [Library](https://andromeda.build/apps/library) | Book log |
70 +
| [Bookmarks](https://andromeda.build/apps/bookmarks) | Link manager |
71 +
| [Sipp](https://andromeda.build/apps/sipp) | Code snippets |
72 +
| [Shrink](https://andromeda.build/apps/shrink) | Image resizing |
73 +
| [OG](https://andromeda.build/apps/og) | Opengraph Preview |
60 74
61 75
## EDC
62 76
src/pages/about.astro +8 −2
12 12
13 13
<PageLayout meta={meta}>
14 14
  <div class="space-y-6">
15 -
    <h1 class="title">About</h1>
15 +
    <h1 class="title">About Me</h1>
16 16
    <p>
17 -
      Hey there! My name is Steve and I’m a DX Engineer with a passion for
17 +
      My name is Steve and I’m a DX Engineer with a passion for
18 18
      developer tooling that advances an open web. I’m currently working at
19 19
      <a
20 20
        class="style-link inline-block"
73 73
      </button>!
74 74
    </p>
75 75
  </div>
76 +
  <!-- <div class="space-y-6 mt-12"> -->
77 +
  <!--   <h1 class="title">About This Site</h1> -->
78 +
  <!--   <p> -->
79 +
  <!--   The main bones of this site is made with <a href="https://astro.build" class="style-link" rel="noreferrer" target="_blank">Astro</a> and the <a href="https://astro.build/themes/details/astro-cactus/">Astro Cactus Theme</a>, although at this point it has been pretty gutted out to fit my own needs. I'm currently hosting it on Cloudflare Pages with a hybrid SSR/Static approach.  -->
80 +
  <!--   </p> -->
81 +
  <!-- </div> -->
76 82
</PageLayout>
src/pages/git.astro +4 −1
1 1
---
2 2
import PageLayout from "@/layouts/Base.astro";
3 -
import { createDarkmatterHighlighter, THEME_NAME } from "../../scripts/shiki-setup.mjs";
3 +
import {
4 +
	createDarkmatterHighlighter,
5 +
	THEME_NAME,
6 +
} from "../../scripts/shiki-setup.mjs";
4 7
5 8
const meta = {
6 9
	title: "Git",
src/styles/global.css +33 −13
25 25
	--color-accent: var(--theme-accent);
26 26
	--color-accent-2: var(--theme-accent-2);
27 27
28 -
	--font-sans: "Commit Mono", ui-sans-serif, system-ui, -apple-system,
29 -
		BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
28 +
	--font-sans:
29 +
		"Commit Mono", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
30 +
		"Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
30 31
31 32
	--animate-fade-in: fadeIn 1s ease-in forwards;
32 33
121 122
	);
122 123
	text-decoration: none;
123 124
}
124 -
.prose :where(a):not(:where([class~="not-prose"], [class~="not-prose"] *)):hover {
125 +
.prose
126 +
	:where(a):not(:where([class~="not-prose"], [class~="not-prose"] *)):hover {
125 127
	background-image: linear-gradient(
126 128
		transparent,
127 129
		transparent 4px,
129 131
		var(--theme-link)
130 132
	);
131 133
}
132 -
.prose :where(strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
134 +
.prose
135 +
	:where(strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
133 136
	font-weight: 700;
134 137
}
135 -
.prose :where(code):not(:where(pre code, [class~="not-prose"], [class~="not-prose"] *)) {
138 +
.prose
139 +
	:where(code):not(
140 +
		:where(pre code, [class~="not-prose"], [class~="not-prose"] *)
141 +
	) {
136 142
	border: 1px dotted #666;
137 143
	border-radius: 2px;
138 144
}
139 -
.prose :where(blockquote):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
145 +
.prose
146 +
	:where(blockquote):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
140 147
	border-left-width: 0;
141 148
}
142 149
.prose :where(hr):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
143 150
	border-top-style: dashed;
144 151
}
152 +
.prose :where(table):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
153 +
	border-collapse: collapse;
154 +
	border: 1px solid #666;
155 +
}
145 156
.prose :where(thead):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
146 -
	border-bottom-width: 0;
157 +
	border-bottom: 1px solid #666;
147 158
}
148 -
.prose :where(thead th):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
159 +
.prose
160 +
	:where(thead th):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
149 161
	font-weight: 700;
150 -
	border-bottom: 1px dashed #666;
162 +
	border: 1px solid #666;
163 +
	padding: 0.5em 0.75em;
151 164
}
152 -
.prose :where(tbody tr):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
153 -
	border-bottom-width: 0;
165 +
.prose
166 +
	:where(tbody tr):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
167 +
	border-bottom: 1px solid #666;
168 +
}
169 +
.prose
170 +
	:where(tbody td):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
171 +
	border: 1px solid #666;
172 +
	padding: 0.5em 0.75em;
154 173
}
155 174
.prose :where(tfoot):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
156 -
	border-top: 1px dashed #666;
175 +
	border-top: 1px solid #666;
157 176
}
158 -
.prose-sm :where(code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
177 +
.prose-sm
178 +
	:where(code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
159 179
	font-size: 0.875rem;
160 180
	font-weight: 400;
161 181
}
src/utils/markdown.ts +4 −1
1 1
import MarkdownIt from "markdown-it";
2 -
import { createDarkmatterHighlighter, THEME_NAME } from "../../scripts/shiki-setup.mjs";
2 +
import {
3 +
	createDarkmatterHighlighter,
4 +
	THEME_NAME,
5 +
} from "../../scripts/shiki-setup.mjs";
3 6
4 7
export async function createMarkdownRenderer(): Promise<MarkdownIt> {
5 8
	const highlighter = createDarkmatterHighlighter();