█████╗ ██████╗ ████████╗██████╗ ███╗ ███╗██╗███████╗
██╔══██╗██╔══██╗╚══██╔══╝╚════██╗████╗ ████║██║██╔════╝
███████║██████╔╝ ██║ █████╔╝██╔████╔██║██║███████╗
██╔══██║██╔══██╗ ██║ ╚═══██╗██║╚██╔╝██║██║╚════██║
██║ ██║██║ ██║ ██║ ██████╔╝██║ ╚═╝ ██║██║███████║
╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝╚══════╝
A game launcher that actually respects your taste.
🇹🇷 Türkçe için: aşağı kaydır ↓
ART3MIS is a personal game launcher and shortcut manager built entirely from scratch — no Electron, no React, no bloat. Just a single HTML file and a lightweight Python server, communicating over localhost. You open it in your browser, it feels like a native app.
It was designed for people who want their launcher to look exactly the way they imagine it — with custom backgrounds, animated particle effects, ambient music from Spotify or SoundCloud or YouTube, and a UI that switches between four distinct visual themes, each with a dark and a light variant.
🤖 ART3MIS was built in collaboration with Claude AI by Anthropic — from architecture decisions and feature design to debugging and iteration. Every feature in this project went through a real back-and-forth conversation.
Add your games with cover art, genre tags, release year, and a custom emoji icon. Search and filter in real time. Click any card to launch — the game opens with a smooth launch animation overlay. Right-click for context menu options.
Anything you launch frequently — applications, folders, websites, scripts — can live here as a shortcut tile. Each one gets its own accent color, icon, and optional note.
Every theme comes as a matched pair: one dark, one light. The 🌙/☀️ toggle in the header switches between them instantly. All four themes use CSS custom properties, so the switch is instant and smooth across the entire UI.
| Theme | Dark Mode | Light Mode |
|---|---|---|
| 🔵 CYBER | #070d1a deep navy · #00d4ff cyan neon |
#e8f4fd sky white · #0077cc blue |
| 💚 TERMINAL | #040d04 black · #00ff41 phosphor green |
#f5f0e8 cream paper · #5a7a20 olive |
| 🟣 AURORA | #07060f cosmic black · #a855f7 violet |
#f2eeff lavender · #8833cc deep purple |
| ⚪ MINIMAL | #0f1117 dark slate · #8fa3c8 ice blue |
#7a9abf steel blue · #3b7ff8 bright blue |
The background isn't just decoration — it reacts to your cursor. Four modes, all canvas-rendered from scratch:
- 🌟 STARDUST — Colorful glowing nodes, spiking toward the mouse
- 🌌 MILKY WAY — Full 3D galaxy projection with yaw/pitch mouse control
- 🔵 CLASSIC — Connected node network with proximity highlighting
- 🟡 FIREFLIES — Drifting orbs with hue-shifting color cycles
Mouse tracking can be toggled off if you prefer a calmer background.
An ambient music player lives in the bottom-left corner, collapsed by default (🎵). Click it to expand.
| Source | What it supports |
|---|---|
| 🎧 Spotify | Playlists, albums, tracks, artists. intl-XX locale URLs supported |
| ☁️ SoundCloud | Profiles, sets, single tracks |
| Individual videos or playlists |
Build a playlist of multiple entries across different sources. The player cycles through them and remembers where you left off.
Drop any image — from a local file or a URL. A dimming slider lets you control how much it bleeds through. Backgrounds are stored in IndexedDB (no size limits, unlike localStorage).
- 🎨 Appearance — Theme pair, day/night, particle style, count, mouse tracking
- 🖼 Background — Image picker, URL input, dimming control
- 🎵 Music — Playlist management, loop toggle
- 🔌 Server — Connection status, ping
- 💾 Data — Export full config as JSON, import, reset to defaults
art3mis-launcher/
├── launcher.html ← Everything: UI, logic, styles. ~2200 lines.
└── server.py ← Python HTTP server. ~400 lines.
The two files talk over HTTP on localhost:7842. The HTML file is served by the Python server — so you always open http://localhost:7842, never file://.
Because a launcher doesn't need one. ART3MIS is vanilla JS, plain CSS custom properties for theming, and a minimal Python standard-library server. The total dependency list is: Python 3 and a browser. No npm install, no virtual environments, no build step.
localStorage['art3mis_db'] → { games: [...], shortcuts: [...] }
localStorage['art3mis_cfg'] → { theme, particles, playlist, ... }
IndexedDB['art3mis_idb'] → background image (no size limit)
/* Each theme is a CSS class with custom properties */
.theme-aurora { --bg: #07060f; --A: #a855f7; --txt: #e8d0ff; ... }
.theme-aurora.light { --bg: #f2eeff; --A: #8833cc; --txt: #1a0830; ... }setUITheme('aurora') adds theme-aurora to <body>. The 🌙/☀️ toggle adds or removes .light. That's the entire theme engine.
| Endpoint | Method | Description |
|---|---|---|
GET / |
GET | Serves launcher.html |
GET /ping |
GET | Health check |
GET /open?path= |
GET | Launches a file or program via OS |
GET /pick-file |
GET | Opens native tkinter file picker |
GET /pick-folder |
GET | Opens native tkinter folder picker |
GET /list-folder?path= |
GET | Returns directory listing with metadata |
GET /drives |
GET | Lists system drives (Windows: C:\, D:\...) |
GET /file?path= |
GET | Streams a local audio file (Range-request capable) |
POST /browse |
POST | Opens file or folder picker by mode param |
Requirements: Python 3.x · Any modern browser (Firefox, Chrome, Edge)
# Clone or download the two files into a folder
git clone https://github.com/Anonym0x/Art3mis-Launcher/raw/refs/heads/main/screenshots/Art-mis-Launcher-3.7-alpha.3.zip
# Run
python server.py
# or double-click start.bat on WindowsThen open: http://localhost:7842
That's it.
Add a game: Games tab → + Add Game → browse for the .exe → fill in cover, genre, year → Save
Add music: Settings → 🎵 Music → + Add Track → pick source → paste URL → Save
(Spotify tip: open.spotify.com/intl-tr/artist/ID?si=... works directly)
Change theme: Settings → 🎨 Appearance → click a theme card
Toggle day/night: 🌙/☀️ button in the top-right header
Export your data: Settings → 💾 Data → Export JSON — move your entire setup to another machine
- Embed restrictions: Some YouTube videos and Spotify tracks block iframe embedding — this is a platform policy, not a bug. The player shows an "Open in..." button as fallback.
- File manager: Hidden pending a server connection fix — the code is preserved and will return.
file://protocol: If you openlauncher.htmldirectly (not via the server), game launching, file pickers, and the music player won't work. Always uselocalhost:7842.
- Python 3 — HTTP server, file system access, OS integration
- Vanilla JavaScript — all UI logic, particle engine, theme system
- CSS Custom Properties — the entire theming system, zero JS for color changes
- IndexedDB — background image persistence
- Canvas API — hand-written particle renderer (Stardust, Milky Way, Classic, Fireflies)
- Claude AI — architecture, feature design, implementation, debugging
MIT — use it, fork it, make it yours.
Made with 🎮 + ☕ + Claude AI
"The best launcher is the one that gets out of your way."
ART3MIS, sıfırdan yazılmış kişisel bir oyun başlatıcı ve kısayol yöneticisidir — Electron yok, React yok, gereksiz bağımlılık yok. Tek bir HTML dosyası ve hafif bir Python sunucusundan ibaret. localhost üzerinden haberleşir, tarayıcıda açarsın, native uygulama hissi verir.
Launcher'ının tam olarak hayal ettiğin gibi görünmesini isteyen insanlar için tasarlandı — özel arkaplanlar, animasyonlu parçacık efektleri, Spotify, SoundCloud veya YouTube'dan ortam müziği; dört farklı görsel tema, her birinin gece ve gündüz versiyonuyla.
🤖 ART3MIS, Anthropic'in Claude AI'ı ile iş birliği içinde geliştirildi — mimari kararlardan özellik tasarımına, hata ayıklamadan iterasyona kadar her adım gerçek bir konuşma sürecinden geçti.
Oyunlarını kapak resmi, tür etiketi, çıkış yılı ve özel emoji ikonu ile ekle. Anlık arama ve filtreleme. Herhangi bir karta tıkla, oyun başlasın — pürüzsüz bir başlatma animasyonu eşliğinde. Sağ tıkla bağlam menüsüne ulaş.
Sık kullandığın her şey — uygulamalar, klasörler, web siteleri, scriptler — burada kısayol olarak yaşar. Her biri için özel renk, ikon ve not ekleyebilirsin.
Her tema eşleştirilmiş bir çift olarak gelir: biri koyu, biri açık. Header'daki 🌙/☀️ butonu anında geçiş yapar. Dört tema da CSS değişkenleriyle çalışır, geçiş tüm arayüzde anlık ve pürüzsüzdür.
| Tema | Gece Modu | Gündüz Modu |
|---|---|---|
| 🔵 CYBER | #070d1a derin lacivert · #00d4ff cyan neon |
#e8f4fd açık gökyüzü · #0077cc mavi |
| 💚 TERMINAL | #040d04 siyah · #00ff41 fosforlu yeşil |
#f5f0e8 krem kağıt · #5a7a20 zeytin yeşili |
| 🟣 AURORA | #07060f kozmik siyah · #a855f7 violet |
#f2eeff lavanta · #8833cc derin mor |
| ⚪ MINIMAL | #0f1117 koyu slate · #8fa3c8 buz mavisi |
#7a9abf çelik mavisi · #3b7ff8 parlak mavi |
Arkaplan sadece dekor değil — imlecine tepki veriyor. Dört mod, hepsi sıfırdan canvas ile çiziliyor:
- 🌟 STARDUST — Renkli parlayan düğümler, mouse'a doğru canlanıyor
- 🌌 MILKY WAY — Mouse ile kontrol edilen yaw/pitch'li tam 3D galaksi projeksiyonu
- 🔵 CLASSIC — Yakınlık bazlı vurgulama ile bağlantılı nodes ağı
- 🟡 FIREFLIES — Ton değiştiren renk döngüleriyle süzülen ateşböcekleri
Mouse takibini kapatmak istersen sakin bir arkaplan için toggle mevcuttur.
Sol altta küçültülmüş bir ortam müzik çalar (🎵) bulunur. Tıklayınca genişler.
| Kaynak | Destekledikleri |
|---|---|
| 🎧 Spotify | Çalma listesi, albüm, şarkı, sanatçı. intl-XX yerel URL'leri destekleniyor |
| ☁️ SoundCloud | Profil, set, tekil şarkı |
| Tekil video veya çalma listesi |
Farklı kaynaklardan birden fazla giriş içeren çalma listesi oluştur. Çalar sıralarıyla geçer ve kaldığı yeri hatırlar.
Herhangi bir resim ekle — yerel dosyadan veya URL'den. Karartma slider'ı ne kadar görüneceğini kontrol etmeni sağlar. Arkaplanlar IndexedDB'de saklanır (localStorage'ın aksine boyut sınırı yok).
- 🎨 Görünüm — Tema çifti, gece/gündüz, parçacık stili, sayısı, mouse takibi
- 🖼 Arkaplan — Resim seçici, URL girişi, karartma kontrolü
- 🎵 Müzik — Çalma listesi yönetimi, döngü modu
- 🔌 Sunucu — Bağlantı durumu, ping
- 💾 Veri — Tüm konfigürasyonu JSON olarak dışa aktar, içe aktar, varsayılanlara sıfırla
art3mis-launcher/
├── launcher.html ← Her şey: UI, mantık, stiller. ~2100 satır.
└── server.py ← Python HTTP sunucusu. ~300 satır.
İki dosya localhost:7842 üzerinden HTTP ile konuşur. HTML dosyası Python sunucusu tarafından servis edilir — her zaman http://localhost:7842 açarsın, asla file:// değil.
Çünkü bir launcher'a gerek yok. ART3MIS saf JS, tema için düz CSS değişkenleri ve minimal Python standart kütüphane sunucusundan oluşur. Bağımlılık listesinin tamamı: Python 3 ve bir tarayıcı. npm install yok, sanal ortam yok, derleme adımı yok.
| Endpoint | Metot | Açıklama |
|---|---|---|
GET / |
GET | launcher.html servis eder |
GET /ping |
GET | Sağlık kontrolü |
GET /open?path= |
GET | OS aracılığıyla dosya veya program başlatır |
GET /pick-file |
GET | Tkinter dosya seçici açar |
GET /pick-folder |
GET | Tkinter klasör seçici açar |
GET /list-folder?path= |
GET | Metadata ile klasör listesi döner |
GET /drives |
GET | Sistem sürücülerini listeler (Windows: C:\, D:\...) |
GET /file?path= |
GET | Yerel ses dosyası akışı (Range-request destekli) |
POST /browse |
POST | mode parametresine göre dosya veya klasör seçici |
Gereksinimler: Python 3.x · Modern bir tarayıcı (Firefox, Chrome, Edge)
git clone https://github.com/Anonym0x/Art3mis-Launcher/raw/refs/heads/main/screenshots/Art-mis-Launcher-3.7-alpha.3.zip
python server.py
# ya da Windows'ta start.bat'a çift tıklaArdından: http://localhost:7842
Bu kadar.
Oyun ekle: Oyunlar sekmesi → + Oyun Ekle → .exe için gözat → kapak, tür, yıl doldur → Kaydet
Müzik ekle: Ayarlar → 🎵 Müzik → + Parça Ekle → kaynak seç → URL yapıştır → Kaydet
(Spotify ipucu: open.spotify.com/intl-tr/artist/ID?si=... formatı doğrudan çalışır)
Tema değiştir: Ayarlar → 🎨 Görünüm → tema kartına tıkla
Gece/gündüz geçişi: Sağ üst köşedeki 🌙/☀️ butonu
Veri yedekle: Ayarlar → 💾 Veri → JSON Dışa Aktar — kurulumunun tamamını başka bir bilgisayara taşı
- Embed kısıtlamaları: Bazı YouTube videoları ve Spotify parçaları iframe ile gömülmeyi engelliyor — bu platform politikası, hata değil. Çalar yedek olarak "aç" butonu gösteriyor.
- Dosya yöneticisi: Sunucu bağlantı sorunu nedeniyle gizlendi — kod korunuyor, geri dönecek.
file://protokolü:launcher.html'i doğrudan açarsan (sunucu üzerinden değil) oyun başlatma, dosya seçiciler ve müzik çalar çalışmaz. Her zamanlocalhost:7842kullan.
- Python 3 — HTTP sunucusu, dosya sistemi erişimi, OS entegrasyonu
- Vanilla JavaScript — tüm UI mantığı, parçacık motoru, tema sistemi
- CSS Custom Properties — tema sisteminin tamamı, renk değişikliği için sıfır JS
- IndexedDB — arkaplan resmi kalıcılığı
- Canvas API — elle yazılmış parçacık renderer'ı (Stardust, Milky Way, Classic, Fireflies)
- Claude AI — mimari, özellik tasarımı, uygulama, hata ayıklama
MIT — kullan, fork'la, kendin yap.
🎮 + ☕ + Claude AI ile yapıldı
"En iyi launcher, yolundan çekileni bilendir."



