diff --git a/README.md b/README.md
index dcfefc1..404dc4d 100644
--- a/README.md
+++ b/README.md
@@ -1,113 +1,9 @@
-# Ertunç Özbay — Personal Website, Workshop & Technical Notebook
+# Ertunç Özbay — Embedded Systems & Hardware Engineering Studio (`ertuncozbay.dev`)
-Live website: **https://ertuncozbay.dev**
-Repository: **https://github.com/ertunc-ozbay/ertuncozbay.github.io** (Branch: `main`)
+This repository contains the static HTML5, CSS3, and vanilla JavaScript source code for **[https://ertuncozbay.dev](https://ertuncozbay.dev)**, self-hosted on a Debian 12 Google Cloud VM with **Caddy** (automatic Let's Encrypt TLS/HTTP3) and **Forgejo** (**[https://git.ertuncozbay.dev](https://git.ertuncozbay.dev)**).
-Welcome! This repository contains the source files for my personal website, engineering project showcase, blog, and lab notebook.
-
-The site is intentionally built with **plain HTML, CSS, and JavaScript**—with no framework, no build step, no database, and no external backend—so it remains free, fast, and easy to understand and maintain as a beginner.
-
----
-
-## 1. What GitHub Pages Does (and How Changes Reach the Live Website)
-
-- **GitHub Pages** is a free static web hosting service provided by GitHub. It takes the HTML, CSS, JavaScript, and image files stored on the `main` branch of this repository and serves them directly to visitors at **https://ertuncozbay.dev**.
-- **How changes go live:** Whenever you edit a file on GitHub (or push a commit to the `main` branch), GitHub Pages automatically updates the live website within about **1 to 2 minutes**. You do not need to run any build command or deploy script.
-
----
-
-## 2. Which File Must NOT Be Changed (`CNAME`)
-
-- **`CNAME`** (located in the root folder `/CNAME`) contains a single line:
- ```text
- ertuncozbay.dev
- ```
-- **Do not delete, rename, or modify `CNAME`.** GitHub Pages uses this exact file to connect this repository to the custom domain `https://ertuncozbay.dev`.
-
----
-
-## 3. Repository Structure & Where Every Page Lives
-
-```text
-/
-├── CNAME # Custom domain file (DO NOT MODIFY)
-├── README.md # This beginner maintenance guide
-├── index.html # Homepage (Personal workshop intro)
-├── about.html # About page (Philosophy, car/AI analogy, university)
-├── contact.html # Contact & collaboration page
-├── lab.html # Lab & experiment notebook page
-├── assets/
-│ ├── css/
-│ │ └── style.css # All visual styling (dark metallic workshop theme)
-│ ├── js/
-│ │ └── main.js # Mobile menu toggle & blog category filter
-│ └── images/
-│ ├── favicon.svg # Browser tab icon
-│ ├── hardware-software-bridge.svg # Diagram on the About page
-│ └── midi-breadboard-layout.svg # Diagram on the MIDI project page
-├── projects/
-│ ├── index.html # Projects overview page (all project cards)
-│ ├── multi-functional-controller.html # Project 1 detail page
-│ ├── rc-autonomous-vehicle.html # Project 2 detail page
-│ └── midi-breadboard-instrument.html # Project 3 detail page
-└── blog/
- ├── index.html # Blog index page (lists all blog posts)
- ├── welcome-to-my-workshop-note.html # Starter / example note
- └── post-template.html # Copy this file to write a new blog post!
-```
-
-- **Where the Homepage is:** `index.html` in the main (root) folder.
-- **Where the About page is:** `about.html` in the main (root) folder.
-- **Where CSS is stored:** `assets/css/style.css`. Change colors, fonts, spacing, or card styles here, and every page updates automatically.
-- **Where JavaScript is stored:** `assets/js/main.js`. Controls the mobile menu button (`Menu` / `Close`) and the category filter buttons on the Blog page.
-
----
-
-## 4. How to Edit Project Cards & Create a New Project Detail Page
-
-### Editing existing project cards
-1. Open **`projects/index.html`**.
-2. Each project is inside an `
- I built this static site on GitHub Pages with plain HTML, CSS, and JavaScript so that I can understand every file in the repository and maintain it myself without a complex backend or framework getting in the way. + I built and self-hosted this static site on my own Linux cloud server with plain HTML, CSS, and JavaScript so that I can understand every file in the repository and maintain it myself without a complex backend or framework getting in the way.
@@ -116,7 +116,7 @@- Whether you want to talk about ESP32 embedded firmware, circuit design, Linux systems programming, or open-source hardware collaboration, feel free to reach out directly via email, LinkedIn, or GitHub. + Whether you want to talk about ESP32 embedded firmware, circuit design, Linux systems programming, or open-source hardware collaboration, feel free to reach out directly via email, LinkedIn, or my self-hosted Git server.
@@ -67,7 +67,7 @@Browse my ESP-IDF C99 firmware, KiCad hardware schematics, Python MIDI RLE compilers, and Rust Linux desktop tools, or connect with me on LinkedIn.
ESP32-S3-N16R8 Multi-Functional Controller (MFC) featuring 2.4 GHz nRF24L01+ RF telemetry, K-Silver Hall-effect gimbals, hardware PCNT rotary decoder, and shared SPI2 display UI.
@@ -134,14 +134,14 @@Dual-core ESP32 16-track MIDI breadboard synthesizer, drum sequencer, 30 FPS SPI OLED visualizer, and Python RLE MIDI-to-C compiler (ESP-IDF v5.2.2).
@@ -149,14 +149,14 @@Standalone Linux desktop launcher written in Rust to run Point Blank with 100% unmodified official CheatBlocker anti-cheat, automated Wine prefix setup, and DirectX 9/11.
@@ -164,20 +164,20 @@
Source repository for this static workshop website and engineering notebook hosted at ertuncozbay.dev.
# 1. ESP32-S3 Multi-Functional Controller (ESP-IDF v5.2.2)
-git clone http://34.57.151.250:3000/ertunc-ozbay/multi-functional-controller.git
+git clone https://git.ertuncozbay.dev/ertunc-ozbay/multi-functional-controller.git
cd multi-functional-controller/firmware && source ~/esp/esp-idf/export.sh && idf.py build
# 2. ESP32 16-Track MIDI Breadboard Synthesizer & Python RLE Compiler
-git clone http://34.57.151.250:3000/ertunc-ozbay/midi-breadboard-instrument.git
+git clone https://git.ertuncozbay.dev/ertunc-ozbay/midi-breadboard-instrument.git
cd midi-breadboard-instrument && python3 scripts/midi_to_c.py scripts/midillis/Alla_Turca/Alla_Turca.mid
# 3. Point Blank Linux Standalone Launcher (Download Pre-Compiled x86_64 Release)
-curl -L -O http://34.57.151.250/assets/downloads/pointblank-linux-v1.0.0-linux-x86_64.tar.gz
+curl -L -O https://ertuncozbay.dev/assets/downloads/pointblank-linux-v1.0.0-linux-x86_64.tar.gz
tar -xzf pointblank-linux-v1.0.0-linux-x86_64.tar.gz && cd pointblank-linux-v1.0.0-linux-x86_64 && ./pointblank-linux
@@ -259,7 +259,7 @@ tar -xzf pointblank-linux-v1.0.0-linux-x86_64.tar.gz && cd pointblank-li
Direct Contact
- Reach out directly via email at ertunc.ozbay@outlook.com, LinkedIn, or GitHub to discuss embedded systems, electronics, or open-source builds.
+ Reach out directly via email at ertunc.ozbay@outlook.com, LinkedIn, or my self-hosted Git server to discuss embedded systems, electronics, or open-source builds.
# 1. Clone the repository
-git clone http://34.57.151.250:3000/ertunc-ozbay/midi-breadboard-instrument.git
+git clone https://git.ertuncozbay.dev/ertunc-ozbay/midi-breadboard-instrument.git
cd midi-breadboard-instrument
# 2. (Optional) Convert a custom .mid file into an RLE-compressed C struct array
@@ -321,7 +321,7 @@ void app_main(void) {
Blog
Lab
Contact
- GitHub
+ Git Server
LinkedIn
diff --git a/projects/multi-functional-controller.html b/projects/multi-functional-controller.html
index f3ea4c9..afd26a4 100644
--- a/projects/multi-functional-controller.html
+++ b/projects/multi-functional-controller.html
@@ -67,7 +67,7 @@
Designed to serve as a universal handheld and desktop transmitter for external robotic platforms (such as my 4WD RC & Autonomous Vehicle) while integrating dual K-Silver Hall-effect joysticks, a 1.3" ST7789 IPS TFT display, MicroSD storage, and MAX4466 audio capture.
# 1. Clone the Multi-Functional Controller repository
-git clone http://34.57.151.250:3000/ertunc-ozbay/multi-functional-controller.git
+git clone https://git.ertuncozbay.dev/ertunc-ozbay/multi-functional-controller.git
cd multi-functional-controller/firmware
# 2. Export the ESP-IDF v5.2.2 toolchain environment
@@ -155,7 +155,7 @@ idf.py -p /dev/ttyACM0 flash monitor
Master Node Pinout & Telemetry Firmware Snippet (firmware/main/mmcontroller.c)
- Below is the hardware pinout and hardware `PCNT` quadrature rotary encoder / ADC1 setup from firmware/main/mmcontroller.c:
+ Below is the hardware pinout and hardware `PCNT` quadrature rotary encoder / ADC1 setup from firmware/main/mmcontroller.c:
@@ -296,7 +296,7 @@ idf.py -p /dev/ttyACM0 flash monitor
Blog
Lab
Contact
- GitHub
+ Git Server
LinkedIn
diff --git a/projects/pointblank-linux.html b/projects/pointblank-linux.html
index f644e47..26036b1 100644
--- a/projects/pointblank-linux.html
+++ b/projects/pointblank-linux.html
@@ -68,8 +68,8 @@
@@ -109,7 +109,7 @@
# 1. Download & extract the official pre-compiled Linux x86_64 release archive
-curl -L -O http://34.57.151.250/assets/downloads/pointblank-linux-v1.0.0-linux-x86_64.tar.gz
+curl -L -O https://ertuncozbay.dev/assets/downloads/pointblank-linux-v1.0.0-linux-x86_64.tar.gz
tar -xzf pointblank-linux-v1.0.0-linux-x86_64.tar.gz
cd pointblank-linux-v1.0.0-linux-x86_64
@@ -151,7 +151,7 @@ sudo dnf install -y wine winetricks mingw32-gcc vulkan-loader vulkan-loader.i686
- git clone http://34.57.151.250:3000/ertunc-ozbay/pointblank-linux.git
+ git clone https://git.ertuncozbay.dev/ertunc-ozbay/pointblank-linux.git
cd pointblank-linux
cargo build --release
./target/release/pointblank-linux
@@ -197,7 +197,7 @@ cargo build --release
Source Repository
- git.ertuncozbay.dev/ertunc-ozbay/pointblank-linux
+ git.ertuncozbay.dev/ertunc-ozbay/pointblank-linux
@@ -217,7 +217,7 @@ cargo build --release
Blog
Lab
Contact
- GitHub
+ Git Server
LinkedIn
diff --git a/projects/rc-autonomous-vehicle.html b/projects/rc-autonomous-vehicle.html
index 179f54e..08a7df6 100644
--- a/projects/rc-autonomous-vehicle.html
+++ b/projects/rc-autonomous-vehicle.html
@@ -176,7 +176,7 @@ _Static_assert(sizeof(RcControlPacket_t) == 8, "RcControlPacket_t must be 8 byte
Blog
Lab
Contact
- GitHub
+ Git Server
LinkedIn