Skip to content

Commit 61dcaf4

Browse files
committed
feat: Divergence Meter implementation (1.048596%)
0 parents  commit 61dcaf4

File tree

24 files changed

+613
-0
lines changed

24 files changed

+613
-0
lines changed
210 KB
Loading

.github/images/preview_clock.png

238 KB
Loading
271 KB
Loading

.github/images/preview_omega.png

235 KB
Loading

.github/workflows/build.yml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
name: Build Application
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
pull_request:
8+
branches:
9+
- main
10+
11+
jobs:
12+
build:
13+
runs-on: ubuntu-latest
14+
15+
steps:
16+
- name: Checkout code
17+
uses: actions/checkout@v3
18+
19+
- name: Setup Go
20+
uses: actions/setup-go@v4
21+
with:
22+
go-version: 1.25.3
23+
24+
- name: Install dependencies (System Libraries)
25+
run: |
26+
sudo apt-get update
27+
sudo apt-get install -y libgl1-mesa-dev libegl1-mesa-dev libx11-dev libxcursor-dev libxrandr-dev libxinerama-dev libxi-dev libxxf86vm-dev libasound2-dev pkg-config
28+
29+
- name: Install Go dependencies
30+
run: go mod tidy
31+
32+
- name: Build
33+
run: go build ./...

.github/workflows/tests.yml

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
name: Run Tests
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
pull_request:
8+
branches:
9+
- main
10+
11+
jobs:
12+
test:
13+
runs-on: ubuntu-latest
14+
15+
steps:
16+
- name: Checkout code
17+
uses: actions/checkout@v3
18+
19+
- name: Setup Go
20+
uses: actions/setup-go@v4
21+
with:
22+
go-version: 1.25.3
23+
24+
- name: Install System Dependencies
25+
run: |
26+
sudo apt-get update
27+
sudo apt-get install -y libgl1-mesa-dev libegl1-mesa-dev libx11-dev libxcursor-dev \
28+
libxrandr-dev libxinerama-dev libxi-dev libxxf86vm-dev libasound2-dev pkg-config \
29+
xvfb
30+
31+
- name: Install Go dependencies
32+
run: go mod tidy
33+
34+
- name: Run tests with Xvfb
35+
run: |
36+
xvfb-run -s "-screen 0 1024x768x24" go test ./... -v

README.md

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
# 🕰️ Divergence Meter
2+
3+
![Go](https://img.shields.io/badge/Go-1.25+-00ADD8?logo=go&logoColor=white)
4+
![Fyne](https://img.shields.io/badge/Fyne-GUI-2C2C2C)
5+
![Platform](https://img.shields.io/badge/Platform-Linux%20%7C%20Windows-lightgrey)
6+
7+
A **Steins;Gate–inspired Divergence Meter** built in **Go** using the **Fyne** GUI toolkit.
8+
9+
This project simulates the iconic divergence meter from the Visual Novel, featuring animated worldlines, multiple attractors, a real-time clock mode, and hidden easter eggs.
10+
11+
## ✨ Features
12+
13+
- 📟 **Animated Divergence Meter display**
14+
- 🧭 **Multiple attractors**: Alpha, Beta, Gamma, Delta, Epsilon, and Omega
15+
-**Clock mode** (real-time HH:MM:SS)
16+
- 🎞️ **Smooth digit animation** during worldline transitions
17+
- 🖥️ **Cross-platform desktop app** (Linux, Windows)
18+
19+
## 🎮 Controls
20+
21+
| Key | Action |
22+
| --: | ----------------- |
23+
| `A` | Alpha attractor |
24+
| `B` | Beta attractor |
25+
| `G` | Gamma attractor |
26+
| `D` | Delta attractor |
27+
| `E` | Epsilon attractor |
28+
| `O` | Omega attractor |
29+
| `C` | Clock mode |
30+
31+
## 🧠 What is a Worldline?
32+
33+
In _Steins;Gate_, a **worldline** represents a possible state of reality, where small numerical variations correspond to shifts between different timelines.
34+
35+
This application translates that idea into a visual experience, using numerical divergence to illustrate transitions between realities, inspired by the behavior of the original divergence meter.
36+
37+
## 🛠️ Tech Stack
38+
39+
- **Language:** [Go](https://go.dev/)
40+
- **GUI:** [Fyne](https://fyne.io/)
41+
- **Graphics:** Image-based digit rendering
42+
43+
## 🚀 Running
44+
45+
### Prerequisites
46+
47+
- Go 1.25 or newer
48+
- Fyne dependencies installed for your OS
49+
50+
### Run
51+
52+
```bash
53+
go run .
54+
```
55+
56+
### Preview
57+
58+
Attractor Mode
59+
![Attractor Mode](/.github/images/preview_attractor.png)
60+
![Omega Attractor Mode](/.github/images/preview_omega.png)
61+
![Attractor Mode Easter Egg](/.github/images/preview_easteregg.png)
62+
63+
Clock Mode <br/>
64+
![Clock Mode](/.github/images/preview_clock.png)
65+
66+
_El Psy Kongroo_

assets/0.jpg

18.7 KB
Loading

assets/1.jpg

14.9 KB
Loading

assets/2.jpg

17.4 KB
Loading

0 commit comments

Comments
 (0)