This project is dedicated to my personal website.
I've decided to have a "mono" repository
where the backend part (Django) is located in the src
subfolder
and the frontend (without any JS framework yet) - in the src_front
subfolder.
I shared the code in December 2023 and at that time it contained the copy of my "static" version of the site (from 2019) plus the Resume app that I have written to learn basics of Django Framework.
So, having it in public I can easily demonstrate my skills (or lack of them 😃) and my progress on learning web development.
- Python 3.12+
- Poetry 1.7+
- Node.js 14+
- Docker or PostgreSQL 16 server
If you want to run this website locally, first you need to get the source code.
git clone https://github.com/hotenov/hotenov.com.git
cd hotenov.com
Second, build common static files.
npm install
npm run build
(without Docker)
-
Specify your PostgreSQL database credentials in
_DockerStuff/.env.dev.local
(allSQL_*
environment variables) -
Install dependencies
poetry install
-
Activate your virtual environment
poetry shell
-
Run Django debug server
python src/manage.py runserver 8887
If you have Docker installed on your machine,
you can spin up two containers: debug server and PostgreSQL server.
(However, you still need to build static files outside Docker.
I plan to add a separate service for that someday)
(optional) You can edit _DockerStuff/.env.boilerplate
and change debug server port via WEB_PORT
variable (default is 8833
)
Execute the following command:
(If you are on Linux host, add sudo
at the beginning)
docker compose -f _DockerStuff/docker-compose.yml up
Distributed under the terms of the MIT license, the source code of hotenov.com is free and open source software. It means you can modify it, redistribute it or use it however you like as long as you do mention the author of the original script.
The Resume app was inspired by wagtail-resume plug-in (by Adin Hodovic).
I borrowed CSS layout for resume from Coding Market's YouTube video and a few styles from another video tutorial by Online Tutorials channel.
I integrated a couple of web components from codyhouse.co owned by Amber Creative S.R.L.
GitHub Profile Card by Piotr Lewandowski
The initial "static" website was based on Clean Blog blog theme, created by Start Bootstrap.
Many JS and CSS snippets from the Internet (see attribution in comments to the code).