You are browsing as a guest. Sign up (or log in) to start making projects!

TADSTech

@TADSTech

Joined June 6th, 2026

  • 18Devlogs
  • 18Projects
  • 4Ships
  • 15Votes
Math has ruined me
Ship Pending review

# SHIPPING TIMEEEEEEEEE: AstroPinax

AstroPinax is finally shipped. A futuristic, minimalistic browser New Tab interface with the universe embedded in it including an embedded terminal-like command console and ambient sound of space.

## Product Overview
A New Tab product themed in Astro that emphasizes speed, immersion and keyboard productivity.

## Main Features
1. **Cosmic Background**: Displays NASA’s APOD (Astronomy Picture of the Day) image as the full-screen wallpaper.
2. **Keyboard Console**: Input `>` to run command (today, random, help) or `/` to make a search request to one of the websites (github, reddit, ddg, youtube). Tab completion is supported.
3. **Ambient Synthizer**: Real-time retro space sounds generation in the browser via Web Audio API. Three different synth tracks with adjustable volumes.
4. **Cupertino Calendar Picker**: Custom built month/day pick overlay.
5. **Preferences Management**: Set preferences (themes, autoplay, quick links, search engines) locally.

Try project → See source code →
Open comments for this post

2h 3m 29s logged

Devlog 6.

I think AstroPinax is finally at the point where it feels like a complete product instead of a side project. The biggest addition is a proper settings panel. Instead of digging through the code, you can now change your default theme, switch your preferred search engine, toggle background audio, and even edit your quick-access links, all from a clean settings window.
I also got rid of the browser’s default date picker. It always felt out of place, so I built my own calendar dropdown that matches the rest of the interface. It blends in much better and makes browsing older APODs feel a lot smoother. Then I added probably my most unnecessary feature… and my favorite one….. AstroPinax now has its own ambient space soundtrack. Using the browser’s Web Audio API, it generates a slow, evolving synth completely in real time. No audio files, no streaming… just the browser creating a subtle space atmosphere on its own. I even added a little audio visualizer in the footer because I thought it looked cool. The command system also got a few upgrades. You can now press Tab to autocomplete commands and search operators instead of typing everything out yourself. I added a few more commands too, including >settings, >music, >prev, >next, and explicit search shortcuts like /google and /ddg. Finally, I added customizable quick-access icons underneath the search bar so getting to your most-used sites takes one click. Looking back, this project started as “I want NASA’s Astronomy Picture of the Day on my new tab.” Somewhere along the way it became a keyboard-first browser homepage with built-in commands, custom search operators, themes, settings, ambient music, and just enough unnecessary polish to make opening a new tab feel interesting again. Safe to say AstroPinax has grown into a lot more than I originally.

0
0
1
Open comments for this post

30m 27s logged

devlog #bugfix

Did a few things I should have done since the beginning by changing up the colour contrast on some text and the colours in general!!!

0
0
6
Open comments for this post

1h 39m 39s logged

Devlog 5 & 5.5

This update started with a small annoyance and somehow turned into AstroPinax getting its own command system.
The first problem was the search bar. Some new tab redirect extensions would steal focus and leave the cursor in the browser’s address bar instead. Not anymore. I ended up brute-forcing it by repeatedly refocusing the search box after the page loads. It’s not glamorous, but it works every time. I also redesigned the date controls. Instead of having separate icons and text scattered around the header, there’s now a single date widget that looks cleaner and opens the date picker with one click. Searches also stay in the same tab now, which feels much more natural for a new tab page. The biggest addition though is Command Mode. If you start your search with >, the search bar transforms into a little terminal and starts suggesting commands as you type. You can move through them with the arrow keys and hit Enter to run them. Right now it supports things like:

today to jump back to today’s APOD.
random for a random day in NASA’s archive.
theme to switch themes.
nasa to open the official APOD website.

Once I had that working, I couldn’t stop adding to it. Typing / now turns the search bar blue and lets you search specific websites directly. Instead of Googling everything first, you can go straight where you want.

/github react searches GitHub.
/reddit linux searches Reddit.
/youtube jazz opens YouTube results.

There are also commands for DuckDuckGo and Wikipedia, with more on the way. I also added >help, which temporarily replaces the APOD panel with a built-in command guide, so you don’t have to remember everything. And if anyone’s curious how AstroPinax works, >source takes you straight to the repository. This project started as “show me NASA’s photo of the day. “Now it’s slowly turning into a keyboard-first browser homepage that just happens to have NASA built into it.

0
0
3
Open comments for this post

1h 7m 55s logged

Devlog 4&4.5.

AstroPinax went through its biggest redesign yet.
The original layout is gone. Instead of showing the APOD beside the content, the Astronomy Picture of the Day now becomes the entire background. Whether it’s an image or a video, it fills the screen and turns every new tab into a different scene from space. To keep everything readable, I added a subtle dark overlay instead of blurring the background. The search bar now sits right in the center inside a frosted glass container, making it the first thing you see without taking attention away from the APOD itself. I also changed the typography to Rajdhani and Outfit, which gives the whole project a much more futuristic feel. While I was at it, I removed the Previous, Next and Today buttons. It felt like unnecessary clutter. Navigation is now handled through the date picker or the keyboard, which fits the minimalist direction I wanted. Then I tackled one of the things that annoyed me most….. waiting. Previously, you had to wait for NASA’s API before you could do anything. Now the search bar appears instantly, so you can start searching the web the moment you open a new tab while the APOD loads in the background. I also replaced the boring loading screen with animated skeleton placeholders. Instead of flashing a “Loading…” message, the page gradually comes to life as the image, title and description arrive. The light theme is gone too. It never really matched the vibe of the project. In its place is a new Void theme—a true pitch-black mode that’s especially nice on OLED screens. The starfield is still there, just toned down enough to give the background a little life without becoming distracting. Finally, I cleaned up the error handling so failed API requests don’t hijack the whole page anymore. If NASA’s API decides not to cooperate, the error simply shows up where the APOD information normally lives. This update wasn’t about adding features—it was about making AstroPinax disappear. Open a new tab, start typing immediately, and let the universe sit quietly in the background.

0
0
3
Open comments for this post

2h 28m 27s logged

Devlog 2, 3 an Update 3.5:

AstroPinax is starting to feel like a real browser new tab instead of just a NASA APOD viewer. The biggest change is the search bar. It works like a normal Google search, but if you type something like github.com, it’ll take you straight there instead. It also autofocuses when you open a new tab, so you can just start typing immediately. I also redesigned the layout. The calendar now lives in the top bar, making it easy to jump to any Astronomy Picture of the Day since 1995 without taking up space. The APOD section got a much cleaner layout with a bigger image, better spacing, and easier navigation. After that, I spent a lot of time polishing the experience. AstroPinax now has a proper dark mode with an animated starfield that fades in behind the UI. Definitely not a necessary feature, but it makes opening a new tab feel a lot cooler. I also fixed one thing that had been bothering me from the start: the page shouldn’t scroll. Everything now fits perfectly inside the viewport, the footer stays pinned to the bottom, and only the APOD description scrolls when it’s too long. Today’s cleanup was mostly about making everything feel more solid. I fixed the layout so the image and information panels always stay the same height, cleaned up the typography with better sizing and spacing, and refactored the codebase by removing all the AI-looking comments and making it read like something I’d naturally write. There aren’t a ton of flashy new features this time around, but AstroPinax feels noticeably more polished, both to use and to build. Slowly becoming something I’d actually want as my default new tab.

0
0
1
Open comments for this post

25m logged

Starting a new project.
It’s called AstroPinax. The idea is simple: every time I open a new tab, I want to see something that reminds me how ridiculously big the universe is instead of another blank page.

Today’s progress:• Hooked it up to NASA’s Astronomy Picture of the Day API, so it can load any APOD since June 16, 1995.

  1. Added a date picker so you can jump to any day, plus Previous, Next and Today buttons for easy navigation.

  2. Finished the base UI with a custom theme using soft greys, warm oranges and a little sudotads green because I couldn’t resist

  3. I also tried to make everything responsive, with a big hero image and the explanation tucked underneath.

Starting small, shipping often. Let’s see where this goes.

0
0
7
Ship

It started with three files.

One HTML file.
One CSS file.
One JavaScript file that did nothing more than show an alert.

That was the entire website.....

But then I just kept building.
Somewhere along the way it stopped becoming a portfolio and became a project of its own.

There are quite a bit of things to be discovered

The best part is that it's still just HTML, CSS, and JavaScript.

No frameworks.

No build step.

No dependencies beyond a couple of CDNs.

Just a folder of static files that GitHub Pages can host rn

Building this reminded me of something I've been trying to practice more often..... actually finishing stuff and shipping.

The website isn't finished.

It probably never will be.

There are still features I want to build, commands I want to add to the terminal, blog posts to write, projects to showcase, and ideas that haven't left my notebook yet.

But this version is here

So here it is.

Shipped... More to Come.

Try project → See source code →
Open comments for this post

1h 50m 51s logged

Devlog #4 & #5 — This Stopped Being “Just a Portfolio”This update kind of snowballed. I sat down intending to polish a few things, and somehow ended up redesigning almost the entire site. The biggest problem before was that the website only really worked on a desktop. The hidden corners relied on hover, the layout wasn’t great on smaller screens, and outside of the terminal there wasn’t much personality. So I decided to fix all of it at once.The first thing was making the site actually workk everywhere. Everything is now properly responsive. At different breakpoints the layout reorganizes itself, grids collapse cleanly, fonts scale down, navigation wraps when it needs to, and nothing feels crammed anymore. The stats cards that looked nice in a single row on desktop now become two columns on tablets and a single column on phones. Speaking of phones…Those hidden corners used to be impossible to discover because, well, you can’t hover on a touchscreen. They now respond to taps instead. Tap a corner and the panel slides in. Tap somewhere else and it disappears. If you forget it’s open, it’ll quietly hide itself after a few seconds. Then I got carried away. The site now has a full-screen terminal. Press Ctrl + backtick anywhere and an entire terminal drops down from the top. It has command history, autocomplete, blinking cursors, fake networking commands, ASCII art, a virtual file system, and over 25 commands to mess around with. You can run things like:helpwhoamiprojectsskillsbannerneofetchfortunematrixcowsaypingcurlthemegithub…and a bunch more. It doesn’t really need to exist. Which is exactly why I built it. To make sure people actually find it, first-time visitors now get a small toast telling them how to open it. On desktop it’s Press Ctrl + backtick, while on mobile it points them to the terminal button instead ..And yes…If you’re on a phone, you can literally shake the device to open the terminal. Probably the most unnecessary feature on the website. Probably my favourite one too. While I was already breaking everything apart, I figured the site deserved a proper redesign instead of being one long page with a hero section. Every section now has its own identity. The About section cuts diagonally across the page. The hobbies, stats, projects and blog sections all use irregular clip-path shapes so almost nothing is a perfect rectangle anymore. On desktop it gives the site a much more distinctive look, and on mobile everything gracefully falls back to rounded cards instead of weird geometry.I also finally committed to the SudoTADS branding.Everything now comes from one set of CSS variables: black backgrounds, white text and the neon green accent. Impact handles the big headings while JetBrains Mono is used everywhere else, especially inside the terminal. One source of truth, which makes changing the theme later ridiculously easy.The biggest visual upgrade though was animation.I added GSAP.Instead of jumping into Three.js, I realised GSAP gave me almost everything I actually wanted with a fraction of the overhead.The hero now has animated SVG blobs floating behind the content, another blob continuously morphs inside the About section, cards reveal themselves as you scroll, the stats scale into view, and the header subtly shrinks once you’ve scrolled past it.No frameworks.No build tools.Just HTML, CSS, JavaScript and some CDN links.The website finally feels like it has story as you scroll instead of feeling like a landing page.There’s still a lot I want to build. The terminal has plenty of room for more commands, the fake file system could become much deeper, and eventually the Blog section will link to real devlogs instead of placeholders.For now though…It finally feels like a website that’s unmistakably mine.

0
0
2
Open comments for this post

1h 47m 53s logged

#Devlog #2 & #3: It Finally Looks Like a Website (with some eggs)

Yesterday, I had three files and a button.

Today, the site is live at tadstech.github.io/MyPersonalWebsite and it actually looks like something I’d send someone as a POC.

What changed?

I added a proper navigation bar, a hero section, an About section, and stats cards that give anyone who lands a quick snapshot of who I am.

Still no frameworks. No build tools. No animations. The only JavaScript is a button that cycles through messages. I want to earn every line of JS instead of adding things because I can.

—The corners—

Then I got curious about what happens when someone actually explores.

So I hid four panels at the edges of the viewport. They’re invisible until you wander your mouse into the corner, then they slide open(mobile excluuded rn but on it’s way.)

I deployed to GitHub Pages so anyone can find them. The site still has plenty of empty space, but it no longer feels unfinished. It feels like a house that rewards the people who bother to peek in the corners.

See you in Devlog #4.

0
0
4
Open comments for this post

21m 1s logged

Devlog 001: The First Files

Hello, guys. Today I finally started building my personal website. No frameworks. No animations. No fancy effects. Just three files: index.html, style.css, script.js. Right now, it doesn’t do much. It has my personal brand theme colors…. black, white, and neon green—a simple landing page, and one JavaScript button that says hello. Sometimes, the hardest part of a project isn’t solving the difficult problems. It’s just starting it tbh and I started today and hope the scale this into something interesting.

0
0
1
Open comments for this post

1h 37m 8s logged

Reworked the repository and folder structure for a modular design as well as adding a few new commands and removing the redundant

0
0
3
Ship

This is TOC SlackBot

Built a Slack bot in a day. Here is how it went.

Started with Bun + TypeScript + Bolt SDK. Socket Mode so no public URL needed. Just starts, connects via WebSocket, and listens for slash commands.

First pass was basic. 8 commands, Husky hooks, ESLint + Prettier locked in. Boring scaffolding stuff.

Then I went ham on the commands. Ended up with 23 slash commands across 4 categories — Utility, Fun, Knowledge, Media. Every command has random response variants so it does not feel like talking to a vending machine. Most of them pull from free APIs with fallbacks when those APIs go down (which they do, constantly).

APIs I hooked up: official jokes, useless facts, advice slip, zenquotes, dictionaryapi, numbersapi, opentdb, catfact.ninja, dog.ceo, evilinsult, would-you-rather, yesno.wtf, bored-api, kanye.rest, coingecko, wttr.in. The weather one uses wttr.in which just returns raw terminal-formatted text and I love it for that.

Made a /toc-help command that shows everything in a categorized menu with an ASCII box header because why not.

Pushed the code quality stuff early — strict tsconfig, noUnusedLocals, that whole checklist. Pre-push hook runs typecheck + lint + format check so I cannot push broken code even if I wanted to.

Built a frontend showcase site for GitHub Pages. Dark theme, command cards with search, copy-to-clipboard, keyboard shortcuts. The GitHub Actions workflow deploys it automatically on push to main. Live at tadstech.github.io/SlackBot if you want to see it.

The bot runs on Bun and stays alive through the Socket Mode WebSocket. All 23 commands registered in the Slack API dashboard. No HTTP endpoint, no ngrok, none of that nonsense.

That is it. A day of work, 23 commands, one GitHub Pages site, too many API wrappers.

Try project → See source code →
Open comments for this post

31m 55s logged

TOC! Slackbot now up and running 24/7 on the nest, some bugs (network related, needs to be fixed tho)

0
0
3
Open comments for this post

2h 39m 55s logged

Wanted to OverEngineer a slack bot

WHAT I CHANGED:

  • 23 commands (was 8). Added weather, crypto, 8-ball, would-you-rather,
    trivia, dictionary, number facts, cat/dog, quotes, roasts, insults,
    yes/no, bored suggestions, kanye quotes. Basically everything the
    free API tier allows.

  • Dynamic response system. Ping no longer just says “Pong!” — it
    bounces between 5 variants. Same for echo, time, uptime. Every
    interaction feels slightly less robotic.

  • Help menu got categories. Utility, Fun, Knowledge, Media. Looks
    like a real app now.

  • Frontend overhaul. Particle background, command search/filter,
    live demo terminal where you can /pretend/ the bot works,
    API grid showing all 10+ integrated services, scroll animations,
    copy-to-clipboard. Still 100% static (GitHub Pages life).

  • Error handling on every external API call with fallback responses.
    If the API is down, the bot improvises.

  • 7 new API integrations: ZenQuotes, DictionaryAPI, Open Trivia DB,
    Cat Facts, Dog CEO, CoinGecko, Kanye Rest. Plus wttr.in for weather.

0
0
3
Open comments for this post

6h 54m 8s logged

Updated landing page, payment systems handling and the testing suite to ensure everything is perfect on live deployment

0
0
6
Loading more…

Followers

Loading…