Solo projects are my life. With some of my most pronounced being: Designing a PCB by myself. Simulating OneDrive using the Scratch programming language. Writing my own website with ReactJS, HTML, and CSS. Programming digital components in armor for a friend. And custom designing a chat app in C# using the WPF .XAML framework.
The next step is to get all of the components and program it. To make sure everything communicates well together and that there are no missing gaps within the hardware. After that, I need to buy 5 PCBs and get soldering.
The final product will have a 3D printed outer case which will also be designed by me. Most likely in Blender.
For a little bit, I had thought of starting a business. After finally settling on a product to sell, I began designing PCB's until I got the right design. It features 4 potentiometers, 12 buttons, 1 IC, 6 LED's, and a Raspberry Pi Pico. From this I have learned PCB design best practices such as 45-dergree bends only. Use as few layers as possible. And general low voltage technology things.
After a scare of my personal data, and scared for my very personal information. I started developing a custom chat application who's entire design philosophy is security and privacy. I managed to get quite far before stopping where I am now. With the current list of completed items being:
Full dedicated server with interact-able console commands
Client side
Property files for both Client/Server
Messages
Images
Chat History
TCP connections
Self testing and diagnostics
The program is written in C# for both ends using the WPF .XAML format from Microsoft for the client side. The image to the left of this text is a single function on the client to add a message to the screen, taking properties such as ImageID's local Image paths, usernames, message content, and more.
The next steps of the project include adding x509 certificates, SSL and TLS in order to make messages secure. As right now, they are transferred in plain-text. I also need to finish the client side as right now it remains very bland and eye-watering to view. Since I used many colors to help me layout the screen.
The Proxmox server is currently running:
PiHole - Network wide DNS and adblocking solution
Minecraft Server - For me and my friends
BeamNG Server - For me and my friends.
In the future I hope to run many more containers, especially on better hardware. All of my game servers are being NAT-ed so that instead of each one being a separate IP on my limited broad network, they are all 1 IP with port forwarding being done through a virtual network adapter.
With an extra computer available to me, I decided I will be the group server hoster. With this though, has brought me some great knowledge. Such as how to run/spool containers and virtual machines quickly and easily, CIDR notation, proper sub-netting, NAT-ing, DNS configuration, Adblocking, and much more.
Back in my freshman year of high-school, in my technology class at the time, we were told to create a website. Similar to the one you are reading this text on right now. Understanding that I was more capable than that, I decided to take it as a challenge to learn and write a ReactJS website in a week, before the deadline. Since it had to be educational, it chose to make it about Solid State Drives.
More importantly, I demonstrated the fact that I can write HTML, CSS, Javascript, and use ReactJS effectively to create a half-decent looking first ever website.
Below is some of the code used in the project. The main file, and the .CSS file.