Releases: IACBI/seseri
Release list
Seseri 4.0.0 — Sinyal
🇹🇷 Sinyal — arayüzün sıfırdan yeniden tasarımı
- Yeni görsel kimlik: sıcak kömür yüzeyler + kehribar "radyo kadranı" aksanı; Bricolage Grotesque / Schibsted Grotesk / Spline Sans Mono tipografisi; beş çubuklu yeni "sinyal" markası ve imza frekans-çizgisi dalga formu
- Yeni gezinme: alt sekme çubuğu (mobil) / kenar çubuğu (masaüstü) — Ana Sayfa (devam-et rayı + abonelikler), Ara, Kütüphane (Abonelikler + İndirilenler), tam ekran Şimdi Çalıyor, Kuyruk ve Ayarlar sayfaları
- Mini transport: sarma/oynat kontrolleri, uyku zamanlayıcısı ve hız artık doğrudan alt çubukta; ilerleme çizgisi dokunarak sarar
- Gerçek bayraklı dil menüsü (Ana Sayfa + Ayarlar); Karanlık/OLED temalarda okunabilirlik iyileştirmeleri; 7 yeni aksan rengi (eski kayıtlar otomatik eşlenir)
- YouTube: görseller resmî CDN'den; iframe'e düşen parçalar arka planda gerçek ses akışına kurtarılır → kilit ekranında çalma + medya tuşları
- Eski derin linkler (
?podcast/?rss/?yt) ve kayıtlı veriler aynen çalışır; RTL, klavye ve erişilebilirlik korunur
🇬🇧 Sinyal — a ground-up UI redesign
- New identity: warm charcoal + amber "dial glow", new type system, the five-bar "sinyal" brand mark and the signature frequency-line scrubber
- New navigation: bottom tab bar (mobile) / sidebar (desktop) with Home, Search, Library, full-screen Now Playing, Queue and Settings
- Mini transport: skip/play, sleep timer and speed live right in the dock; the progress hairline is tap-to-seek
- Language menu with real SVG flags; readable Dark/OLED text ramps; 7 new accent colors (saved accents remap automatically)
- YouTube: artwork from the official CDN; embed-fallback tracks get rescued to a real audio stream in the background → lock-screen playback + media keys
- Legacy deep links and stored data keep working; RTL, keyboard and a11y preserved
Windows: Seseri_4.0.0_x64-setup.exe (imzasız — SmartScreen uyarısında "Yine de çalıştır" gerekir). Web/PWA: https://iacbi.github.io/seseri/
Tam liste: CHANGELOG.md
Seseri 3.1.0 — Queue panel, confirm dialogs, RTL & security hardening
Seseri 3.1.0 — free, no-account podcast player · ücretsiz, üyeliksiz podcast dinleyici
▶ Web: https://iacbi.github.io/seseri/ · 🪟 Windows: Seseri_3.1.0_x64-setup.exe (below / aşağıda)
English
✨ New
- Queue panel — the play queue finally has a face: see queued episodes on the sort bar, move them up/down, remove one or clear all, with a live count badge. Fully keyboard-accessible.
- Confirm dialogs — every destructive action (clear progress, clear all data, delete downloads, unsubscribe) now asks first, in a styled dialog that matches the app. Deleting downloads and unsubscribing previously ran without asking.
- Offline banner — a quiet strip tells you when the connection drops; downloaded episodes keep playing.
- Success toasts when exporting OPML / JSON backups.
🔒 Security
- Worker redirect SSRF closed — upstream redirects are followed manually (max 3 hops) and every target is re-checked against the private-host guard.
- Cleaner production CSP — dev-only origins (
127.0.0.1,ws:) are stripped from the shipped Content Security Policy at build time.
♿ Accessibility & UX
- Focus management: opening a feed lands keyboard focus on its title; going back returns it where you left.
- Arabic (RTL) now mirrors correctly — episode list, badges, settings drawer and toggles.
- All controls have ≥44px touch targets (visuals unchanged) and screen-reader labels/busy states where they were missing.
- Notch-safe: the header, top bar and settings drawer respect device safe areas in installed (PWA) mode.
🖥 Windows
- The NSIS installer is now built automatically by CI on every version tag.
⚠️ The installer is currently unsigned — Windows SmartScreen may warn on first run. Choose "More info → Run anyway". The app content updates itself with every web deploy.
🧪 Quality
- Unit tests grew from 51 to 104 (plus 26 worker tests): queue, router history, offline storage, feed resolution, theme consistency, redirect guard.
Türkçe
✨ Yenilikler
- Kuyruk paneli — çalma kuyruğunun artık bir yüzü var: sıralama çubuğundan kuyruktaki bölümleri gör, yukarı/aşağı taşı, tek tek çıkar veya tümünü temizle; canlı sayaç rozeti. Tamamen klavyeyle kullanılabilir.
- Onay diyalogları — tüm yıkıcı eylemler (ilerlemeyi sıfırla, tüm verileri temizle, indirilenleri sil, abonelikten çık) artık önce soruyor; uygulama diline uygun şık bir diyalogla. İndirilenleri silme ve abonelik kaldırma daha önce hiç sormadan çalışıyordu.
- Çevrimdışı bildirimi — bağlantı koptuğunda sakin bir şerit haber verir; indirilen bölümler çalmaya devam eder.
- OPML / JSON yedeği dışa aktarınca başarı bildirimi.
🔒 Güvenlik
- Worker yönlendirme SSRF açığı kapatıldı — yönlendirmeler artık elle izleniyor (en fazla 3 sıçrama) ve her hedef özel-ağ korumasından yeniden geçiyor.
- Daha temiz üretim CSP'si — geliştirmeye özel adresler (
127.0.0.1,ws:) derleme sırasında yayınlanan güvenlik politikasından çıkarılıyor.
♿ Erişilebilirlik ve Deneyim
- Odak yönetimi: bir yayını açınca klavye odağı başlığa gelir; geri dönünce kaldığın yere döner.
- Arapça (RTL) artık doğru aynalanıyor — bölüm listesi, rozetler, ayarlar çekmecesi ve anahtarlar.
- Tüm kontrollerde ≥44px dokunma alanı (görünüm değişmedi) ve eksik olan ekran okuyucu etiketleri/durumları tamamlandı.
- Çentik desteği: başlık, üst çubuk ve ayarlar çekmecesi kurulu (PWA) modda cihazın güvenli alanlarına saygı duyuyor.
🖥 Windows
- NSIS kurulumu artık her sürüm etiketinde CI tarafından otomatik derleniyor.
⚠️ Kurulum şu an imzasız — Windows SmartScreen ilk çalıştırmada uyarabilir; "Ek bilgi → Yine de çalıştır" seç. Uygulama içeriği her web dağıtımıyla kendini günceller.
🧪 Kalite
- Birim testleri 51'den 104'e çıktı (+ 26 worker testi): kuyruk, gezinme geçmişi, çevrimdışı depolama, yayın çözümleme, tema tutarlılığı, yönlendirme koruması.
Full changelog / Tüm değişiklikler: CHANGELOG.md
Seseri 3.0.0 — Windows
🪟 Seseri for Windows
İndir / Download: Seseri_3.0.0_x64-setup.exe (≈2 MB)
Kur ve aç — uygulama canlı Seseri'yi açar ve her web güncellemesiyle kendini yeniler.
Install and open — the app wraps the live Seseri site and stays up to date automatically.
⚠️ Windows SmartScreen: imzasız kurulum dosyalarında "Windows korumalı" uyarısı görebilirsiniz.
Daha fazla bilgi → Yine de çalıştır deyin. / You may see a SmartScreen warning — click
More info → Run anyway.
Bu sürümde / Highlights
- Yeni "S" monogram ikon ve yenilenen arayüz (otomatik tema, masaüstü iki-panel, mini oynatıcı, kuyruk)
- Çevrimdışı dinleme: bölüm indir, internetsiz çal
- YouTube'u isimle arama; podcast + YouTube sonuçları yan yana
- OPML içe/dışa aktarma, JSON yedek
- 8 dil, RTL desteği, erişilebilirlik iyileştirmeleri
v2.1.0 — Waveform scrubber, design system & performance
Highlights
- Waveform scrubber — the flat progress bar is now an amplitude waveform you can drag to seek, with a live playhead and time tooltip. Bars are generated locally from a deterministic per-episode seed (no audio analysis needed).
- Living equalizer — the now-playing equalizer animates only during playback, and the currently-playing episode row shows a mini-equalizer in place of its index.
- Solid design system — spacing, type, motion-duration and elevation token scales; now-playing title crossfade; refined, theme-aware visuals across Dark, Light and OLED.
Fixed
- Podcast load failure / "Failed to fetch." Worked around the iTunes CDN serving cached responses bearing another origin's CORS header: requests now use a cache-busting parameter (plus a CORS-proxy fallback) so every request is fresh and correctly attributed.
- Light theme readability — themed surface/text tokens, a theme-aware wordmark sheen (so "Seseri" no longer disappears on white), cleaner hero vignette, AA-legible captions.
Changed
- Path-independent deployment — manifest
scope/start_url, the Service Worker, and404.htmlresolve relative paths, so the app runs at any base URL with no configuration. The Service Worker is now network-first for navigations (new deploys appear immediately); cache bumped toseseri-v2.
Performance
- Removed the stacked
backdrop-filterblurs from the settings drawer that caused an FPS drop on open/scroll (solid surface + composited slide). - Episode rows use
content-visibilityso off-screen rows in long feeds aren't rendered until scrolled into view. - Background motion pauses while the settings drawer is open; dropped the animated hero-glow blur filter; momentum +
overscroll-behavior: containon scroll areas.
Full changelog: CHANGELOG.md
v1.1.0 — RSS support, subscriptions & major bug fixes
Highlights
- Direct RSS feed support — paste any podcast feed URL into the search box (fetched via public CORS proxies with automatic fallback)
- Subscriptions — star podcasts and find them on the home screen
- Shareable deep links —
?podcast=<id>/?rss=<url> - Media Session API — lock-screen and headset controls with episode metadata
- Sleep timer (15/30/60 min) and global keyboard shortcuts (Space, arrow keys)
- Accessibility — keyboard-focusable episode rows, proper dialog semantics, labeled icon buttons
Bug fixes
- Sort toggle no longer highlights the wrong episode while one is playing
- Filtering keeps tracking the playing episode instead of breaking next/previous navigation
- Service Worker offline fallback and registration paths fixed for the GitHub Pages subdirectory
404.htmlnow redirects to the app root instead of the domain root- Episode durations follow the selected language instead of always showing Turkish units
localStoragequota errors are handled gracefully; progress is also flushed onvisibilitychange(iOS Safari)
Docs
English README + Turkish README.tr.md, LICENSE (MIT), CONTRIBUTING, SECURITY policy, CHANGELOG, Open Graph tags.
Live demo: https://iacbi.github.io/podcast-player/
Full details in CHANGELOG.md.