Please enter the commit message for your changes. Lines starting

with '#' will be ignored, and an empty message aborts the commit.

On branch main

Initial commit

Changes to be committed:
	new file:   .DS_Store
	new file:   .env
	new file:   .gitignore
	new file:   ai-worker/Dockerfile
	new file:   ai-worker/requirements.txt
	new file:   ai-worker/worker.py
	new file:   background-worker/Dockerfile
	new file:   background-worker/go.mod
	new file:   background-worker/go.sum
	new file:   background-worker/main.go
	new file:   background-worker/market.go
	new file:   background-worker/rmv.go
	new file:   background-worker/rss.go
	new file:   background-worker/sql_work.go
	new file:   db/Dockerfile
	new file:   db/init.sql
	new file:   docker-compose.yml
	new file:   server-app/dockerfile
	new file:   server-app/go.mod
	new file:   server-app/go.sum
	new file:   server-app/main.go
	new file:   volumes/.DS_Store
	new file:   volumes/db-init/.DS_Store
	new file:   volumes/db-init/data/news_rss_feeds.csv
	new file:   volumes/web/.DS_Store
	new file:   volumes/web/static/css/blog.css
	new file:   volumes/web/static/css/index-lite.css
	new file:   volumes/web/static/css/index.css
	new file:   volumes/web/static/css/mandelbrot.css
	new file:   volumes/web/static/img/minecraft.png
	new file:   volumes/web/static/js/blog.js
	new file:   volumes/web/static/js/index-lite.js
	new file:   volumes/web/static/js/index.js
	new file:   volumes/web/static/js/mandelbrot.js
	new file:   volumes/web/static/media/cantina.mp3
	new file:   volumes/web/static/media/countdowns.json
	new file:   volumes/web/static/media/gong.mp4
	new file:   volumes/web/template/blog.html
	new file:   volumes/web/template/index-lite.html
	new file:   volumes/web/template/index.html
	new file:   volumes/web/template/mandelbrot.html
This commit is contained in:
hubble_dubble
2026-01-26 00:19:54 +01:00
commit 3667c678e4
41 changed files with 3556 additions and 0 deletions

View File

@@ -0,0 +1,112 @@
:root {
color-scheme: dark;
}
* {
box-sizing: border-box;
}
body {
margin: 0;
padding: 16px;
font-family: Arial, sans-serif;
background: #121212;
color: #e6e6e6;
}
.page-header {
position: sticky;
top: 0;
background: #121212;
padding-bottom: 12px;
z-index: 10;
}
.header-row {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-between;
gap: 12px;
}
.title {
font-size: 1.3rem;
font-weight: 700;
}
.actions {
display: flex;
gap: 8px;
align-items: center;
}
.actions a,
.actions button {
background: #2a2a2a;
color: #e6e6e6;
border: 1px solid #3a3a3a;
border-radius: 6px;
padding: 6px 10px;
font-weight: 600;
text-decoration: none;
cursor: pointer;
}
.status {
margin-top: 8px;
font-size: 0.9rem;
color: #bdbdbd;
}
.panel {
margin-top: 16px;
padding: 12px;
border: 1px solid #2a2a2a;
border-radius: 8px;
background: #1a1a1a;
}
.panel h2 {
margin: 0 0 10px;
font-size: 1.05rem;
}
.news-item {
padding: 10px 0;
border-top: 1px solid #2a2a2a;
}
.news-item:first-child {
border-top: none;
padding-top: 0;
}
.news-title {
font-weight: 700;
margin-bottom: 4px;
}
.news-text {
color: #c9c9c9;
font-size: 0.95rem;
}
.news-link {
margin-top: 6px;
}
.news-link a {
color: #8ecbff;
text-decoration: none;
}
.market-list,
.rmv-list {
display: grid;
gap: 6px;
}
.empty {
color: #9a9a9a;
}