Hello World!
Sep 12, 2026
Hello! Welcome to Risoldi.Tech! Thanks for visiting!
This is a portfolio style website that acts as a hub for my projects, tools, and other sites. I built it because i had a bunch of other projects built but didn’t truly have a dedicated place to show them off or host them.
As of right now, Risoldi.Tech is built mainly through Claude Code using the following stack (for the always-current list as things change, see the Stack page):
Core site
- Astro — static site framework (the whole site)
- TypeScript — Content Collections schemas, data files
- Tailwind CSS v4 — styling
- Vanilla JavaScript — theme toggle, mobile nav, node-network background, scroll-hide header, contact form, and all of the Bell Ringer/comments/accounts client-side logic (no framework or library)
- Zod — schema validation for content collections and defensive CMS-input normalization
Content & blog
- Astro Content Collections — data layer for blog posts, Bell Ringer questions, and project/tool cards
- Sveltia CMS — browser-based, git-backed admin panel for writing posts and managing cards
- Markdown — content format
Bell Ringer, comments & accounts (backend)
- Cloudflare Workers — the
bellringer-apiWorker: vote tallies, comments, and the whole accounts system, written in JavaScript - Cloudflare D1 — SQLite-compatible serverless database (users, sessions, comments, votes, rate limits)
- WebCrypto (PBKDF2-SHA256) — password hashing, no external dependency needed
- Resend — transactional email for verification links and password resets, sent from a DKIM/SPF-verified
risoldi.techdomain - GitHub OAuth — reused (via a second Worker,
sveltia-cms-auth) to gate the comment moderation tool to one account
Backend-less services
- Web3Forms — contact form submission handling
- Cloudflare Web Analytics — pageview tracking
Hosting & deployment
- GitHub — version control across three repos (the site, the Bell Ringer API, the CMS auth proxy)
- Hostinger — static hosting with Git-based auto-deploy on every push, plus DNS
- Cloudflare — Workers runtime, D1, and a few DNS records for email deliverability
Asset generation (one-off tooling, not shipped)
- Headless Chrome — screenshotting project sites for thumbnails, rendering the resume to PDF
- ImageMagick — image resizing/cropping/compositing
- librsvg (
rsvg-convert) — SVG-to-PNG for the favicon - Poppler (
pdftoppm/pdfinfo) — inspecting generated PDFs - Google Fonts — Inter, JetBrains Mono, Lora
CLI/dev tooling
- npm / Node.js
- Homebrew,
gh(GitHub CLI),wrangler(Cloudflare CLI),pandoc
How it’s actually built
- Claude Code — the whole thing, site and backend both, built through pair-programming sessions with Claude
Im not very prolific, interesting, or good at writing. I just like to mess with stuff and see what i can get it to do so I probably will not be posting a whole lot of crazy post. The plan is to write up some posts about individual projects, dev logs, and from time to time some unrelated content.
As for now thanks again for visiting! I hope you found it interesting!
-Ris
Discussion
Comments are posted by visitors and don't reflect the views of Risoldi.Tech or its creator. Keep it clean and civil — spam and abuse get removed.