I have been continuing developing my CMS system I have written from scratch in Kotlin.
The backend web app is written in ReactJS and uses a RESTFUL API to perform CRUD operations on post/pages and users.
I have recently added a Toast notification system for both the CMS and the Kettlebell Competition web apps.
I also added a sitemap XML generator for the static page generator.
I have been spending the last couple of weeks programming a new Content Management System for my website in Kotlin.
Why? What was wrong with the old site?
- it used jQuery and was slow loading pages
- it was not responsive
I also wanted to learn about REST, Kotlin DSLs and databases.
I am currently porting the old web apps I had on the old website. I have currently only moved Channel Grapher and the DNS Statistics App.
I plan to keep developing this platform and build more websites using it. I currently do not see it as a competitor to any other CMS but mainly as a way for me to learn more about web technologies.
It also allows me to host Kettlebell lifting competitions with my brother!
You can get the source code for the Kettlebell competition app here.
The work-in-progress CMS code is here.
I’ve made some minor updates to my ReactJS app Channel Grapher. It is turning out to be one of the hardest parts of the programming process.
I need to get a nice icon for my app and will see if I can get one professionally made when I get a chance.
I plan to use React Native to make this an android app as well.
I spent some time recently learning ReactJS. I had previously read a book on ES6 which made the process easier.
The API Grapher uses a JSON router written in Kotlin to overcome issues with Cross Origin AJAX requests.
I used bootstrap for the CSS layout.
The app is here.
I’ve been a bit slack lately keeping up with the blog and my reading materials.
I guess I am a bit burnt out and need a break. I have however printed some cool things with my 3D printed I would like to share.
Self Watering Plant
Eachine Wizard X220 Pod
IR Glow Plot Clock
Source code here.
3D files here.
I have finally finished publishing my completed weather station.
The entire design is Open Source and available on the following links:
Have fun and happy hacking!
The final version has the following features:
- Improved weather proofing
- Slanted roof for improved drainage
- Increased accuracy of Stevenson Screen
- IOT Updates
- New ThingSpeak API viewer
- Rain/UV Index/Pressure/Humidity/Temperature
- Good battery life
- Reduced weight and parts
I had two ESP8285 micro-controllers fail on me today (probably due to my carelessness). It is pretty frustrating as I was completing the final version of my weather station.
The new version is more compact, increases the protection to the electronic components from water ingress and now features a slanted solar panel. It also has a USB charge port.
I had to add an incline to the solar panel due to pooling of water causing discoloration to the panel of my currently deployed weather station.
I will now have to wait for more parts from China!
Here is my final version of this simple internet enabled clock. The case is printed out of PETG. There is a lot of room for improvement, but I like to keep the scope simple on my projects and this works perfect as a clock.
The source code and CAD files are here.
I built a cool little clock using an ESP8266 and a dot matrix display I got for $8. The total cost will probably be under $20.
The clock uses NTP to sync the time, then updates the second ticker on the bottom every 2 seconds. When the minute changes it updates the entire display.
It didn’t take too long as I used code by others (NTP client, WiFi Manager, MD_MAX72xx animations).
Code is here.
We had a few severe thunderstorms where I live and I the wind and rain caused damage to my electronics in my outdoor weather station.
The weather station is waterproof if there is just light rain, but strong winds will blow water into the Stevenson Screen damaging the electronics.
I have decided to seal off the electronics as much as possible – hopefully this new construction will be more robust.