Updates
Development History / Changelog
Track Grim Archive Development
This page documents all major changes, new features and improvements introduced to the archive. Each update is described with an exact deployment date.
Underground Map, Freshness UI & RunesCOMPLETED
Replaced the Web3 Guestbook with a registration-free Underground Map. Implemented a robust 7-day "NEW" tag system on the homepage, and added interactive Reader Runes to user profiles.
Underground Map
Lowered the barrier to entry by removing Blockchain logic. Users can now drop a single location pin globally with an attached guestbook message. Integrated inverted OSM tiles for a dark aesthetic without API limits.
Home Freshness Engine
Zine table of contents now strictly applies a red "NEW" stamp to items published within 7 days, preventing devaluation of the label. Always highlights top 3 recent entries visually.
Reader Runes
User profiles now display gamified Runes based on reading statistics. Fixed critical bugs in SQL triggers counting zine reads.
Calendar Overhaul & Custom IconographyCOMPLETED
Integrated the authentic Kolovrat symbol into the Wheel of the Year using a custom PNG mask-image. Rebuilt the Calendar Sidebar widget layout and implemented dynamic detection of the next upcoming holiday when no event is currently active.
Custom PNG Masking
Replaced the generic Lucide React flame icon with a custom Kolovrat PNG. Used CSS mask-image to allow dynamic Tailwind coloring (like text-red-600) on the raster image, preserving the mystic glow effect.
Upcoming Holidays Engine
The Slavic Calendar engine now scans forward in time. During quiet periods, the Sidebar Widget and Modal explicitly highlight the next upcoming pagan ritual to maintain the atmospheric anticipation.
Dynamic Audio & Monitoring FixesCOMPLETED
Introduced a new "Vintage Film" atmosphere with projector sounds, implemented a randomized background ambient playlist, and fixed duplicate user entries in the real-time presence widget.
Random Ambient Playlist
The background audio engine now cycles through 7 different dark ambient tracks randomly, rather than looping a single file, seamlessly crossfading during navigation.
Vintage Film Atmosphere
Added a new visual atmosphere mode mimicking old damaged VHS/film with dynamic scratching, grain, and the mechanical sound of a running projector.
Monitoring Deduplication
Users currently online via WebSockets are now explicitly filtered out of the "Recently Active" database list to prevent visually contradictory duplicates.
Security Hardening & SEO FixesCOMPLETED
Locked down Supabase database vulnerabilities, implemented Push Notification triggers for Zines and News, fixed case-sensitive tag routing, and updated canonical URLs.
Supabase Hardening
Revoked public execute permissions from sensitive SECURITY DEFINER functions and tightened RLS policies for bot activities and push subscriptions.
SEO & Tag Filtering
Fixed bug where capitalized tags (e.g. "Split") returned empty pages. Added missing language parameters to canonical meta tags for better indexing.
Push Triggers & Footer
Push notifications are now natively triggered upon article verification. Refactored the footer to cleanly integrate the STR-HOLD partnership link.
Validation, Stats & Email FlowCOMPLETED
Fixed silent form validation failures by displaying proper error messages for content length. Resolved critical case-sensitivity bugs in author statistics, and ensured email notifications for accepted/rejected content correctly display the article title without hanging the server.
Form Validation Feedback
Connected the publish button in the Zine Editor to the Zod schema. Submitting articles that are too short now displays a clear, red warning message.
Author Stats Fix
Database queries for Zine and News counts are now case-insensitive. This restores missing statistics for users whose wallet addresses were saved in mixed-case format (checksummed).
Email Pipeline Optimization
Fixed serverless timeouts that dropped admin notification emails. Emails for accepted/rejected quarantine content now explicitly include the title of the article.
Push Fixes, UI Avatars & Email PrepCOMPLETED
Resolved critical issues with Push Notifications in Next.js App Router, fixed missing administrator avatars in the Monitoring widget, deduplicated the Recently Read history, and replaced internal nomenclature from Council to Editors.
Push Notifications Fixed
Moved background notification backend from generic Vercel Functions to Next.js API Routes for stable subscriptions.
Avatar Fallback Engine
Hardcoded staff avatars now properly fall back in the real-time presence Monitoring widget. Removed glitchy DiceBear artifacts from sidebar comments.
Personal History Deduplication
Recently read list renamed to "Your History". Fixed duplicate title generation when changing language variants or slugs.
Profile UI & Gamification OverhaulCOMPLETED
Completely rebuilt the User Profile interface for better balance, fixed typography, extended the gamification rank system, and improved overall site rendering speed and smoothness.
Profile Layout Balance
Moved the content feed directly into the right column to eliminate empty space on large screens. Upgraded typography and logout UI.
Extended Ranks
Increased the maximum points cap from 75 to 1000. Added new ranks like Necromancer and Archdemon to make progression more rewarding.
Speed & Smoothness
General engine optimizations. The app now responds faster and UI transitions are noticeably smoother.
Audio Architecture & Form ValidationCOMPLETED
Massive refactoring of audio management across the app, replacing fragile DOM events with a robust React Context. Implemented strict Zod validation for all content submission forms, and fixed complex SSR pagination caching bugs.
Audio Context Refactor
Replaced the legacy custom DOM event dispatcher (PlayAudio/StopAudio) with a global AudioContext provider. This resolves playback overlaps, un-stoppable tracks, and ensures consistent state across the entire UI.
Bulletproof Forms (Zod + RHF)
All data entry forms (Zines, News, Bands) are now protected by Zod schemas and powered by React Hook Form. This drastically reduces boilerplate code, eliminates invalid submissions, and provides clear inline error messages.
SSR Pagination & Cache Fix
Fixed a critical issue where Next.js ISR (revalidate) aggressively cached the main feeds, ignoring category and tag URL filters. Implemented force-dynamic routing and synced UI filtering with server requests.
About Page Update
Updated the technology stack information to clearly reflect our use of Next.js, React Server Components (RSC), and Supabase OTP anti-spam protection.
UI & Layout Fixes
Rebuilt the "Load More" pagination button layout to prevent aggressive overlapping with the footer text and adjusted margins for cleaner UI spacing.
User Profiles & Author StatsCOMPLETED
Added interactive user profiles, an explorable user directory, and switched profile statistics to display actual authored content (Zines/News) rather than read counts.
Interactive Profiles & Directory
Users visible in the sidebar can now be clicked to view their full profile dossiers. Added a dedicated directory modal to browse all registered cultists.
Author Content Tracking
Profile statistics were refactored to fetch live database counts of Zines and News items added by the specific wallet address, replacing the old, less accurate "read" counters.
Web Push Notifications & New FeaturesCOMPLETED
Major feature update: Web Push notifications, global search, article tracking, and multiple performance & UX improvements across the entire application.
Web Push Notifications
Full Web Push implementation with Service Worker and VAPID keys. Users can subscribe via the bell icon in the header. Push notifications are sent automatically when admin publishes new articles or news — even when the browser is closed.
Global Search (Ctrl+K)
Full-screen search overlay activated by Ctrl+K / Cmd+K. Searches bands, articles, and news simultaneously with keyboard navigation and type-specific icons.
Recently Read & Article Stats
Sidebar widget showing last 5 read articles with thumbnails and relative timestamps. View counter on articles. Share/Copy Link button on article detail pages.
Performance & Layout Overhaul
Comprehensive performance audit and homepage layout restructuring. Removed unnecessary overhead and improved mobile navigation.
- ▸Console cleanup — removed all debug console.log statements from production
- ▸Reload fix — replaced window.location.reload() with React state management
- ▸ECO mode guards — heavy SVG filters disabled in performance mode
- ▸Mini Propaganda Wall — compact flyer grid on homepage replacing full-width wall
- ▸Mobile nav swap — Wall→Map in bottom navigation for better usability
- ▸Font optimization — removed unused Architects Daughter font (~40KB saved)
- ▸Duplicate cleanup — removed redundant band listings and review sections
System WielojęzycznyUKOŃCZONE
Wdrożono kompletny system wielojęzyczny dla artykułów w Archiwum. Autorzy mogą teraz publikować treści w języku polskim, angielskim i światowym (WORLD)z niezależną edycją każdej wersji językowej.
- ▸Struktura gwiazdy - wszystkie tłumaczenia wskazują na jeden oryginał
- ▸Niezależna edycja - zmiana wersji PL nie wpływa na EN i odwrotnie
- ▸Przełącznik języków - łatwa nawigacja między wersjami w artykule
- ▸SEO-friendly URLs - unikalne slugi z suffixem języka (slug-pl, slug-en)
- ▸Ochrona przed nadpisaniem - checkbox i ostrzeżenia przy zmianie języka
Statystyki Profilu Użytkownika
Wprowadzono sekcję "Historia Konta" w panelu profilu. Użytkownicy mogą teraz śledzić swoją aktywność w archiwum poprzez 4 kluczowe wskaźniki:
- ▸Data Rejestracji - prawdziwa data z bazy danych
- ▸Czas w Archiwum - ile dni jesteś członkiem społeczności
- ▸Całkowita Treść - suma wszystkich dodanych zespołów, artykułów i newsów
- ▸Zweryfikowane - ile Twoich treści zostało zatwierdzonych przez moderację
Ulepszenia Interfejsu
Mini-Avatary Online Users
Dodano wyświetlanie awatarów użytkowników w panelu bocznym. Sekcje "Online Teraz", "Ostatnio Aktywni" i "Nowi W Kręgu" pokazują teraz prawdziwe zdjęcia profilowe z bazy danych zamiast generowanych ikon.
Spis Treści w Panelu Bocznym
Wprowadzono spis treści w bocznym panelu dla lepszej nawigacji. Użytkownicy mogą teraz szybko przeglądać strukturę treści na stronie głównej.
Optymalizacja SEO
Obecnie pracujemy nad poprawą widoczności w wyszukiwarkach oraz optymalizacją metadanych dla lepszego pozycjonowania. Celem jest zwiększenie ruchu organicznego i dotarcie do szerszej społeczności metalowej.
- ▸Optymalizacja meta tagów i Open Graph
- ▸Structured data (JSON-LD) dla artykułów i zespołów
- ▸Poprawa szybkości ładowania i Core Web Vitals
- ▸Sitemap.xml i robots.txt dla crawlerów
- ▸Canonical URLs i redirecty 301
Status: Aktywne prace rozwojowe • Spodziewane wdrożenie: Luty 2025
Note: Note: The updates page is regularly updated with each major change to the archive. Documentation includes new features, improvements to existing mechanisms and significant fixes. History is documented from January 2025 onwards.