Creating One's Own Web and Blog Site
Visit ProjectWhen creating one's own website, it's always hard to decide with the many products readily available on the market. The question is always what is the best way for me? What style am I to choose from? What templates exist? And many other questions, but instead of going on the ready-to-go search I decided to make 2 little projects of my own, creating my personal and blogging website. My personal one, entailing directly downloading my newest CV, and a contact form, and my blogging website has a full admin mode, allowing me to create, edit, delete any new project or blog, in a way I'm comfortable writing them.
This sounds a little counterintuitive, why not use an existing tool? Anyone might work, but creating my own allows me to learn new frameworks, and it's def more fun to use an own-made, than ready-made solution, that's just my take.
The base is done by using FastAPI (yes, I went with Python, I was doing so many Type- and JavaScript projects lately, I needed to get back to some new old-fashioned Python ;)). Now the clue was not to use a Database, why? Because it involves setting up a schema, then adding on top and extending it on every iteration. But as I worked so much with Docker Compose and Kubernetes lately, the idea came along to use YAML, predefine all elements that are visible, and allow a very easy way to translate the page into multiple languages, and in addition to having the whole website in a YAML per language, why not also use Markdown for textual descriptions?
Well, funny enough having a simple file-based system, instead of a DB, is kind of fun for a personal website (I would not recommend going this route for a full-fledged application.. honestly too many concerns I could raise hahaha).
But well, in any case, combining simple files, styles, my websites were created very quickly and adding a Dockerfile to create them easily on any of my systems.
The effort to create an admin mode for blogging was to soothe my comfort zone.
This is a topic I'll cover in one of my blogs, feel free to read up on it, and that's all there is to this project, so thanks for visiting and feel free to drop me a message on my personal contact form if you're interested in more ;)
Cheers,
maugini_
Technologies Used
- Docker
- CapRover
- MarkDown
- Yaml
- Python
- FastApi
- Jinja
- HTML
- JavaScript