The Thaumatorium:
Where the magic happens

NostraDavid's' programming projects

Thaumatorium.com

This site!

First I was going to create it in Angular, but then I learned React and wanted it to it in that. But then I figured out how Elm worked and created the actual first version in that - on archive.org you cansee the first version uses elm.js, but I found it to be too opinionated. Not to mention I found the information/javascript ratio to be too low.

Eventually, after reading up on JS, HTML and CSS, I decided to just write everything in pure web tech. And why not? I don't need a several kilobytes of javascript, just to show some articles!?

And thus this site was born! I'm as of still busy writing and re-writing the site because I'm still building up experience, and I still have a small TODO list and I'll have to finish, but it's fine.

If you want to see what this site used to look like, check out archive.org.

Semantic­ Override­ Network­ (SON)

A news aggregator that will pierce the heavens!

For real though: I'm still busy forming ideas around this project

Every damn time I think "I got this", I usually lose it within a day or two, even after writing things down.

Starfield

It's the first type of project I've ever created! Now available in an HTML Canvas element.

The first one I ever made was in cmd.exe, with some janky-ass c moving * and . characters as different sized stars from the right to the left.

Over the years I created different versions (a 2D and even a 3D OpenGL variant!)

Now that I know some HTML/CSS/JS, I decided to recreate this project for the web with plain HTML/CSS/JS! No crazy libraries needed!

Mocking Spongebob Text Generator (MSTG)

WhY dO wE nEeD aNoThEr MoCkInG sPoNgEbOb TeXt GeNeRaToR???

ROT13

I could go to ROT13.com, but why?

Slugify

Turns regular text into a URL-friendly "slug"

Base64

encoding/decoding

Decode this

Triple click the text to select it all

V2hZIGRPIHdFIG5FZUQgYU5vVGhFciBCYVNlNjQgRW5Db0RlL2RFY09kRXI/Pz8=

Encode

Decode

Timing fetch

Test how long it takes for a URL to load


let d=Date.now();
fetch('https://hacker-news.firebaseio.com/v0/user/NostraDavid.json')
.then(response => response.json())
.then(data => {
console.log(`${Date.now()-d}ms\t${JSON.stringify(data).length} bytes`);
});

Example URLs:

It took: ?ms

The data is ? bytes long

Text to Emoji

Created because of this thread on Reddit

Encode

Decode

π”Šπ”’π”―π”ͺπ”žπ”«π”¦π”·π”’π”―

(Germanizer)

Encode

Decode