Hello everyone. It’s time to show my new personal website: https://hinst.github.io Last week, I spent 8 hours on the website, and in total, I have already spent 50 hours on it.
Here is what’s on my site:
-
My blog posts in three languages: Russian (original),
German, and English — translated using an LLM 🇷🇺 🇩🇪 🇬🇧
- Translations are done automatically using a script with LM Studio and the Aya Expanse 8B model.
- Every night at midnight, my Orange Pi sends a request to my desktop computer asking it to translate the text. I had to do this because the Orange Pi doesn’t have enough memory to run an LLM. It requires 8 GB, but the Orange Pi only has 4 GB. If my desktop is turned off at that moment, the translation is postponed until the next day according to the schedule.
- Initially, I planned to use Google Translate for the translations, but it turned out that their API is paid and there’s no official free version… I probably could have tried to make the requests go through the same protocol as the browser-based web translator, but in the end, I decided not to bother with it.
- Two display modes for the blog with a calendar: one for wide screens and one for narrow smartphones 💻📱
Here is what’s planned for the future:
- Comments
-
Full migration to SQLite
- Currently, most of the information is stored in text files, while only some information is kept in SQLite.
While I was working on the new site, I noticed a security flaw in my old website 🤔. It was possible to enter ../ into the URL parameters because I hadn’t implemented any checks for it… So, in theory, one could navigate out of the blog posts folder into any other folder on the server. However, since the site ran in Docker, there wasn’t much interesting to find there anyway 😴. Or was there? Anyway, I’ve already fixed the flaw https://github.com/hinst/SmartProgress-or/commit/bf199ff49425419829aa353aa5358ebd2742321b 👌.