solomonneas.dev
A performant, content-driven portfolio website built with modern web technologies. This project serves as both a professional portfolio and a learning playground for the Astro framework, showcasing a custom "Industrial Terminal / NOC Dashboard" design system.
.dev was chosen intentionally to signal developer focus while enforcing HTTPS by default. All .dev domains are on the HSTS preload list, making secure connections mandatory.
This project is open source! Check out the code, fork it, or give it a star if you find it useful.
The site leverages modern web technologies for optimal developer experience and performance:
File-based routing generates the following endpoints:
01 Development Flow
Local development with hot module replacement
02 Production Build
Static site generation for deployment
Theme Engine
Dynamic color theming with CSS filters and localStorage persistence.
Core Mechanism
hue-rotate()- shifts entire color paletteinvert()- toggles light/dark mode- Full-page filter via
#filteroverlay
Persistence
- Theme saved to localStorage
- Applied on page load before paint
- Random hue on each theme toggle
Implementation
- Inline <script> in Layout.astro
- CSS transitions for smooth changes
- Favicon dynamically recolored via SVG
Typography System
Self-hosted fonts for performance and consistent rendering.
Font Stack
- IBM Plex Mono - Code, terminals, UI
- IBM Plex Sans - Body text
Loading Strategy
- WOFF2 format for compression
- @font-face in global.css
- Served from /public/fonts/
Terminal Aesthetic
The "NOC Dashboard" visual language throughout the site.
Visual Elements
- Terminal headers with status indicators
- Monospace typography throughout
- Dotted borders and subtle backgrounds
Color Patterns
color-mix()for theme-aware colors- Emerald green (#10b981) accents
- Low-opacity backgrounds (2-5%)
Interactive States
- StatusLight pulsing animations
- Hover transforms and glows
- CLI-style navigation ($ cd /path)
Content Collections
Type-safe content management with Zod validation.
Blog Schema
title: z.string()pubDate: z.date()tags: z.array(z.string())
Benefits
- Build-time validation catches errors
- TypeScript types auto-generated
- IDE autocomplete for frontmatter
Defines site URL and Vite plugins. Tailwind integrated via @tailwindcss/vite plugin for Tailwind v4 support.
Imports Tailwind via @import "tailwindcss", defines @font-face rules, CSS variables, and base styles.
Minimal dependencies: astro, tailwindcss, @tailwindcss/vite, @astrojs/rss.
Defines content collections using defineCollection() and Zod schemas for type-safe content.
Zero-config deployment. Auto-detects Astro, runs build, deploys to edge CDN on every push to main.
- ✓ Astro 5.x framework configured
- ✓ Tailwind CSS 4.x integrated
- ✓ Terminal design system implemented
- ✓ Dynamic theme engine working
- ✓ Content collections for blog
- ✓ Vercel CI/CD pipeline active
- ✓ RSS feed generation
- ○ Additional blog content
- ○ SEO optimization (meta tags, OG images)
- ✓ Vercel Analytics integrated