Journal des modifications | Enea Zani
Tous les changements du site, du plus récent au plus ancien : ce qui a changé sur eneawork.it et quand.
- eneawork.it + mise à jour mobile — v2026.09.23, Sep 23, 2026
- Nouveautés : , 66 69 6e 64 20 69 74 20 69 6e 20 73 65 74 74 69 6e 67 73 20 28 64 6f 6e 74 20 70 72 65 73 73 20 68 65 6c 6c 6f 20 61 6e 69 6d 61 74 69 6f 6e 20 74 6f 67 67 6c 65 20 36 20 74 69 6d 65 73 21 29
- Nouvelles options dans les réglages: Interrupteur pour le ripple, Interrupteur pour les vibrations
- Nouveautés pour mobile: titre et description visibles, avec aperçu épinglé pour la page /lens sur mobile, proportions M3E exactes dans la navbar mobile (PILL_H, isActive py-3)
- Modifications de la page /info: ajout d'un InfoCardHeading partagé pour la cohérence des titres de la page readme + textes et titres réécrits, le bouton 'explore releases' occupe toute la card sur mobile
- Finitions et autres corrections: séparateur de la home plus épais et arrondi, réutilisé aussi dans /info, titre et date de l'aperçu mini-blog centrés, ils ne s'alignaient pas, réécrites les descriptions des pages du menu des réglages, bouton 'share' masqué sur la page guestbook en mobile, ajouté un espace en bas du pied de signature du guestbook sur mobile, renommé une grande partie du site pour suivre eneawork.it plutôt que l'obsolète enea.lol, corrigé l'icône de rafraîchissement dans /now pour le mode mobile, tableaux GFM centrés sur mobile, bouton 'To Top' centré pour mobile, espacements de /music corrigés et tag <a> non déplaçable comme avant, arrondi symétrique sur la page /music
- Corrections de bugs: corrigé le bug de texte coupé dans la navbar mobile, corrigé le bug du ripple avec vibration, (MOBILE) corrigée l'interaction avec la barre de défilement mobile (filtres du blog), corrigé le problème de défilement avec le ripple (correctif : appui minuté), corrigé la bordure du terminal curl
- Enregistrer/restaurer : retouches et corrections — v2026.09.20, Sep 20, 2026
- Composant de champ de saisie: implémenté un nouveau champ de saisie inspiré de m3
- Restaurer la configuration: mise en page et styles revus, et toute la section de restauration de configuration rendue plus intuitive
- Retouches des boutons Copier le lien de config + Exporter en JSON: (copié du copylink utilisé dans le blog) a désormais des animations au survol, des coches et plusieurs libellés.
- Technique: corrigé les éléments de filtre du blog qui explosaient, corrigé le ripple dans la recherche de la palette de commandes
- Refonte du site au plus près de m3e — v2026.09.19, Sep 19, 2026
- barre latérale: suppression des bordures imprécises, style de la barre latérale remplacé par des sideitem sans bordure au plus près de m3e, actions du pied de page améliorées, plus de microanimations (fondu du texte hero dans la barre latérale), les réseaux sociaux apparaissent maintenant dans la barre latérale compactée, avec des animations très fluides, ajout d'un tooltip expressif pour la barre latérale compactée, bouton de compression entièrement redessiné, animations de bascule de la pilule d'indicateur actif bien plus propres, astuce paletteHotkeyLabel de la barre latérale habillée en touche kbd
- fonctionnalités: curseur global d'échelle des polices, configurable par l'utilisateur !, suppression de highhz (déjà intégré, plus besoin en option), mode focus nettement amélioré pour un usage réel
- paramètres: réglages entièrement refondus (tri, noms, contexte, etc.), style amélioré et tout rangé dans des conteneurs., [mobile] courbe élastique pour un dépassement plus naturel
- palette de commandes: refonte de la majeure partie du style : meilleure typographie, span dynamique, positionnement, animations améliorées et bien d'autres choses.
- effet ripple: ajout d'un composant ripple, désormais utilisé presque partout, qui étend un cercle sur tout le bouton selon l'endroit du clic (directement inspiré de m3), ripple appliqué à presque tous les boutons du site
- aspect technique: rendu des icônes material amélioré, corrigé le bug de survol des sideitem compactés, corrigé les problèmes d'héritage, corrigé les problèmes des icônes font stretch, corrigé les courbes de dépassement inverse, corrigé les projections de mise en page des frères, réduit environ 927 lignes de code mort dans toute la base, corrigé les artefacts de rendu propres à firefox grâce à plus de coins coupés et de masques
- Mise à jour de petites retouches — v2026.08.14, Sep 14, 2026
- Nouveaux projets: added `torr` and `demarkify` projects to the projects section of the homepage.
- (Changements majeurs) Widget météo: redefined condition mapping, fixed units mismatch, added a toggle for metric units, added an automatic background refresh interval (15 min auto-refreshing), added switching from enea (my) location, to user local location, along with preferences in settings
- Modifications de la palette de commandes: made the search bar more expressive (animations, clear, etc.)
- Modifications du mode mobile: imrpoved music-related components and scaling for mobile devices
- Curling d'eneawork.it: running `curl https://eneawork.it` will now output a card in which essentially lets you navigate the site in your terminal. have fun!
- Autres modifications: fixed scrollbar positioning, fixed env issues and fallbacks for LASTFM_CONFIG if runtime env object doesnt have keys set explicitly, fixed env parsing, improved bot ssr handling
- Refonte pour réduire la mémoire — v2026.08.17, Aug 17, 2026
- allègement des polices: stripped 11 unused google font families from the global stylesheet, including noto sans JP, KR, SC, arabic, and hebrew. CJK font tables alone were inflating memory usage by 150MB+ on EACH page load.., removed redundant roboto flex google import since the site already loads google sans flex locally, removed outfit, space grotesk, syne, bricolage grotesque, unbounded, and inter, none are used anymore., kept jetbrains mono (for code blocks) as the sole external font import. everything else is self-hosted. :)
- optimisation des ressources: converted sidebar pfp from a 1254x1254 PNG (1.8MB) to a 256x256 WebP (11KB). that's a 99.4% file size reduction!, updated app.tsx to load main.webp instead of main.png, decoded bitmap memory drops from ~8MB to a fraction of that.
- build et bundle: configured clean rollup vendor chunking: vendor-react, vendor-motion, and the blog page syntax highlighter are now properly isolated chunks., eliminated the 25 micro-chunk dynamic import wrappers that were adding V8 module record overhead.
- vue de débogage: gated DebugView behind settings.debugMode so the console hijack and overlay never mount in a normal session., moved global console.log/warn/error intercept into a lazy initConsoleHijack() that only runs when the debug panel actually mounts.
- En cours de lecture (enfin !) — v2026.08.09_2, Aug 9, 2026
- en cours de lecture: added a live last.fm widget to /now showing currently playing tracks., implemented backend edge function handling for last.fm api data., cleaned up hardcoded fallback strings and strictly enforced environment secrets., survived an ai agent attempting to commit API keys across four different files.
- autres mises à jour du site: updated rss feed generation and static asset builds, refactored component state tracking for live player updates
- Refonte de la palette de commandes et de l'interface — v2026.08.09, Aug 9, 2026
- palette de commandes: added a keyboard-driven command palette activated with ⌘K, Ctrl+K, or Ctrl+Shift+P. all shortcuts are optional., added cards and lists views. lists use a classic stacked command layout, while cards use double-stacked left/right navigable cards., added search scopes for everything, pages, commands, and blog posts., added configurable result limits to control how many results appear before scrolling/searching., added recent actions, showing recently selected commands when the palette opens with no search., added keyboard navigation modes: standard, wrap, and 2d grid., added hover suppression, allowing keyboard selection without mouse hover movement.
- fonctionnalité: fixed `vire.config.ts` so the local server actually works., fixed the `api/index.ts` express server., fixed guestbook right-side offset when usernames are too long by truncating them., fixed wrapping on the upload file button when importing config., fixed abrupt cutoff on `Paste sharing link/code here` on smaller screens., fixed the sidebar collapse animation being too liquidy., fixed duplicate transitions causing inconsistent animations., fixed weather icon positioning., fixed the inverted rounded hover logic on BugReportDialog footer actions., fixed floating sidebar sideitems being too small., fixed guestbook right-side offset for long usernames., fixed mobile popup gaps when overdragging guestbook, settings, known issues, bug report, and other dialogs.
- appareils mobiles: hidden desktop-only options on mobile and added disclaimers to affected pages., made the mobile debug view more compact., fixed the date alignment on the ancbar for mobile layouts., adjusted Readme page footer buttons to avoid a cramped triple-button layout., fixed KnownIssuesDialog spacing on mobile., fixed popup overdrag gaps across mobile dialogs., fixed the featured row from wrapping unexpectedly., improved truncation and sizing across several mobile-sensitive elements.
- interface: added more consistent borders and spacing throughout the blog page., adjusted rounded elements across the interface and added larger borders to the top-to-bottom control., added larger borders to the copy link capsule., lowered the `--outline-variant` ring opacity on the sidebar collapse button., made BugReportDialog borders more consistent., added consistent borders and spacing to debug window controls., added padding to debug window items to prevent content from clipping into the scrollbar., made the guestbook preview border more consistent., adjusted Guestbook and other popup spacing for better visual consistency., improved card metadata spacing so dates and icons do not wrap awkwardly., made the featured date wrapper `min-w-0` and truncated its inner span., removed `hover:border-[var(--surface-variant)]` from non-clickable cards., reduced hover animations on non-clickable cards., modified BounceButton to use less exaggerated animations and support full-width card layouts., added BounceButton to project cards., removed the blur and `gradient-to-br` effect from the Readme page., adjusted the guestbook chevron-right icon size.
- contenu: renamed the Readme page section from `a mission` to `philosophy` and adjusted its sizing., rephrased `i don't design things i wouldn't use.` to `i never ship what i don't use.`, removed the extra read checkmark icon from the opened blog view when a post is already read.
- nettoyage: removed unnecessary project files and leftover Vercel configuration., renamed `2.svg` to `favicon.svg` for clarity.
- Mise à jour accessibilité et suppression de /dash — v2026.08.07, Aug 7, 2026
- Accessibilité: Added keyboard accessibility to the site, Added proper ARIA semantics, Added meaningful labels on close/back buttons, Improved accessibility globally including settings modal so overlay blocks background interaction and screen readers get a clear dialog context
- Routage: Removed /dash and cleaned up its sidebar/navigation references., Marked /now as the last sidebar item so the nav end state behaves right
- Floating navbar for mobile mode! — v2026.08.06, Aug 6, 2026
- Navbar changes: completely dropped the old navbar, replaced it with a floating capsule + squircle styled floating navbar
- Typography and Text Cleanup Update — v2026.08.05, Aug 5, 2026
- Update info: Hi! This isn't really normal for me to put a info section, but I have to warn; this update is HUGE. eneawork.it 3.0.0 is here and it's brining quite a bit to the site :)
- Typography changes: This is the big one, the site now uses Google Sans Flex which is self-hosted. (variable font, GRAD,ROND,opsz,slnt,wdth,wght all of it.), This also comes with changes like dropping non-latin names for HelloEnea and using other extended-latin language/pronounciation instead.
- Text changes: The site now uses generally proper grammar, since I had some time to work on the polishing there.
- /No page drop: Retired the /No page, as it never really served much of a purpose to the site.
- Autres modifications: Refactored 404 page (now uses a proper icon, better animation logic, and better cases that actually makes sense instead of duplicates), Rephrased all /home page project descriptions, Added borders for /dash recent links view, Added sidewheel scrolling to the Lens page expanded view, Fixed Pin icon container not being sized correctly, Fixed sidebar collapse button and revamped it's animation logic, Full M3Scrollbar overhaul (overdrag, track logic, all revamped 300+ lines changed alone)
- hello, haptics! (..and variable /dash font, better recent links view, back gestures, and more!) — v2026.07.31, Jul 31, 2026
- complete haptics system!: finalized the haptics system and added tons of haptics across the whole site!
- /dash changes: added a variable font that grows/bolds as you type!, fixed blur container not being on the correct card
- other changes: made 'to top' even better: it is now bigger on desktop and the circular container around the shape on mobile is gone as well., better back gestures: added a better back gesturing system to prevent accidental site closing (based on window.history and modal states.)
- Icon Overhaul and Working Weather Update! — v2026.07.24, Jul 24, 2026
- icon update: Now using modified material symbols rounded, which are tweaked for the site.
- weather: The weather widget now works correctly, finally removing the placeholders and using openmeteo API, after some years.
- palettes: added color palletes (such as tonal spot, fidelity, content, neutral, expressive, and fruit salad) and options to switch between them. things are much lighter on dark mode, as well.
- lens dynamic theming: added fully-local lens dynamic theming, which expanding or browsing Lens photos dynamically recolors the theme from the images vivid dominant color.
- other changes: added reading progress indicator into blog and fixed other site-crashing bugs
- 'Many revamps!' Update — v2026.07.22, Jul 22, 2026
- To Top button overhaul: completely redesigned the button for mobile and desktop and added 3 cycling icon options to choose from!
- Announcement bar refresh: basically a whole overhaul. literally everything here changed for the better.
- other tweaks: added subtly contrasted button and modal icons and added spin microanimation for all modal close button hover interactions.
- Mobile fixes: added dynamic edge-detection scaling for mobile hero headers, made report + known issues pages use same settings 5% gap from top logic
- Typography and info rework — v2026.07.16_2, Jul 16, 2026
- new readme text rework: revamped bio text, fully rewrore the backstory and sizing, fixed mission sizing and text size + rewrote main content, overhauled terminal typography and sizing for mobile and desktop, renamed 'the stack' to 'my stack' for clarity + fixed some typography, updated fingerprint and revamped archival text
- home changes: made enea show first again instead of вирекс, fixed hero sizing on mobile, improved RoleTicker animations and typography + capitalize instead of uppercase, rewrite 'I make stuff that works the way it's supposed to. simple, efficient, and intentional.' to a friendlier slogan 'i like simple, non-stressful setups and code that doesn't need a manual :)'
- sidebar changes: fixed independent dev sizing, improved enea user typography, renamed 'Directory navigation' to 'Endpoint navigation' and revamped both of their sizing and fonts
- Settings pages, sorting, and more user experience. — v2026.07.16, Jul 16, 2026
- mobile settings: grouped everything into clean pages, and added nice transitions.
- desktop settings: added a sidebar for pages, with all buttons being motion.buttons.
- general settings changes: renamed titles, sorted everything into different categories, added clean transitions globally.
- other changes: fixed debug mode exit on close
- guestbook addition and shorten page ux fixes — v2026.07.14, Jul 14, 2026
- guestbook addition: added a page at the bottom of the home to leave a message about the site or even communicate with eachother!
- shorten/dash page ux fixes: fixed the containers, and revamped open animations.
- Info page fresh air update — v2026.07.11, Jul 11, 2026
- paramètres: added a toggle for info page fullscreen
- github heatmap: added contribution heatmap at the bottom of the info page
- Retire Loom and Tracker — v2026.07.10, Jul 10, 2026
- loom: Completely scraped loom from the codebase as I'm currently not focused on it. :(
- tracker: Removed tracker, like loom, as I wasn't updating it, and it seemed too confusing/random for viewers.
- what's actually new?: Dash: Fully overhauled the URL shortener/dash page. It's now aimed for an input-first style, and has a floating input-bar now! It's also better for mobile than ever before!, Now page: A page that actually has more info about me, and what I'm learning. Such as: What I'm building, learning, reading, and listening to right now., Lens pinning: Added pins to the Lens gallery, for my curated/favorite images :), Photo dates: added dates to all photos in Lens., Date sorting in Lens: Lens page photos are finally sorted by date properly.
- completely overhauled debug view — v2026.07.08_3, Jul 8, 2026
- vue de débogage: overhauled the menu and completely rewrote it, added new features exclusive to the menu (e.g. slow animations, vinyl mode), separated component
- other changes: rewrote the text for warn turning on debug mode, renamed FoolsPopup for better clarity, recolored lots of stuff for ux
- fix the bento lag once and for all — v2026.07.08_2, Jul 8, 2026
- fix desktop bento grid: optimized image assets, added view-based deferred rendering (lazy loading), added gpu compositor friendly overlay borders, better card and image hover scaling to fix anim stutters, fixed webkit border-rad aliasing and jagged edges, removed static will-change overrides for actually usable window resizing
- Overhauled to top and fix mobile focus mode — v2026.07.08_2, Jul 8, 2026
- focus mode: fixed view for mobile, so it unblurs as you scroll, rather than needing to tap every card and piece of content as you go.
- to top redesign: made the chip shorter, which looks significantly better., made it expand when scrolling down and slightly up on mobile., more expressive animations for both
- exit focus mode logic for mobile: mobile and desktop now shows different text, without showing the `esc` hint
- markdown overhaul & archives — v2026.07.07_2, Jul 7, 2026
- markdown: overhauled markdown components with full dynamic oklch theming support, refactored code blocks to adapt syntax colors based on the primary hue, fixed blockquote vertical alignment and added premium styling with 120px min-height, removed static highlight.js theme dependencies for a more cohesive UI
- archives: restored 6 additional legacy posts from early 2026, revamped the markdown stress test post with comprehensive technical examples
- Home page announcement bar addition! — v2026.07.07, 2026.07.07
- announcement bar addition: added a new announcement bar as a full-width card under the philosophy card, fixing the multi-focal-point conflict for ux on the homepage., smooth scroll integration: linked the explore CTA directly down to the projects section, passing secondary widgets.
- Blog UX Polish & Scrollbar Makeover — v2026.07.06, 2026.07.06
- bug fixes: back to feed: fixed a weird bug where the 'back to feed' button did nothing after reading a post, it was using window.history.back() which breaks on direct URL visits and refreshes. now, it uses the internal SPA router so it SHOULD always work.
- micro-animations: back to feed button: upgraded from plain CSS hover to a motion.button with spring variants. the whole button springs left and scales up on hover, and the icon independently bounces further left, now giving it a pulling feel., copy link button: added a spring hover lift (y: -4) with a growing shadow, a 'press down' on tap, and a proper bouncy scale on click instead of the old flat pulse., copy link icon swap: the link/check icons now spin in and out with spring physics instead of a plain opacity fade, link exits rotating -45* and check enters spinning from -90*., copy link text swap: 'copy link' / 'link copied!' now slides up/out and down/in with Animate Presence instead of just a static text swap.
- m3 scrollbar refinements: new scrollbar: added new m3e scrollbar in replacement of the old native-like scrollbar., removed scrollbar for mobile: entirely removed the scrollbar for mobile for a cleaner interface on mobile screens, cat cat meow
- Settings UX & Theme Switcher Overhaul — v2026.07.05_4, 2026.07.05
- theme switcher redesign: pill / pills: replaced the single long capsule with three individual m3e buttons, all with better in/out corners logic., bouncy scale: each button now scales up with a physics pop when active and squishes on tap :), fill animation: the active background fades and scales in/out independently per button instead of sliding across the gap, which fixed clipping.
- mobile settings sheet: rounded top: the mobile settings sheet now has rounded top corners (2rem) in both peeking and fullscreen states., removed back button: replaced the clutter-y back button with a clean SettingsIcon on the left and an X button on the right, now matching the desktop layout better
- better 120hz gestures: native touch events: added custom touch handlers to bypass framer-motion overhead for no janky GPU dragging, useMotionValue: added motion values to update position directly in touch handlers, bypassing react renders for 120fps dragging, velocity tracking: 5-sample moving window tracks px/s velocity for a snappy drag-to-dismiss calculation.
- peeking default state: 12% gap: added a 12% top viewport gap at the top of the settings menu to get near-native android backdrop sheets., scroll-to-fullscreen: new scrolling-to-drag handover now enables easy fullscreen-to-peek snapping., snap physics: custom spring physics snap sheet for precise 12% peek or 0% fullscreen anchor thing., drag anywhere: edge-to-edge dragging works globally whenever internal content is at scroll-top!
- Bug Reporting & Known Issues — v2026.07.05_2, 2026.07.05
- new features: added a server-secure bug reporting program with title, description, and screenshot capability., added drag and drop, file upload, and clipboard paste (Ctrl+V) support for screenshots., added a known issues viewer so users can check addressed bugs directly from the feedback panel.
- security: routed all bug reports through a server sided proxy endpoint, keeping the webhook url's safely hidden to stop spam.
- Global Animation Controls — v2026.07.05, 2026.07.05
- new settings: finally added the diable animations option to settings to turn off motion and transition effects., added a custom confirmation dialog to prompt the user to reload the page to apply the settings cleanly.
- other: fix card hover globally (caused from conflict with disableAnimations, now fixed since full implementation)
- Mobile Consistency Rework — v2026.06.09_2, 2026.06.09
- Settings changes: moved settings to a more immersive, true-to-design page that doesnt look like a copy-paste of desktop's settings modal., introduced a gesture to close settings menu, added a better blur background behind the menu
- Dash page overhaul: reduced the massive 100px and 9xl headers to a clean 6xl on mobile, FUCK the cut-offs., got rid of extra useless padding and font size of fields on mobile so they actually fit on your phone, adjusted the link creation button to a better height and padding on mobile, tightened up the padding in the bento cards and sections which also got rid of some extra whitespace
- Autres modifications: fixed the /tracker header sizing on mobile, made the read entry button in /blog actually look decent
- Even More Consistency — v2026.06.09, 2026.06.09
- Bug fixes (Bento crash): fixed bento crash (updateSettings was being recreated on every render because it wasn't wrapped in useCallback, so any component using updateSettings in a useEffect dependency array would trigger the effect again whenever the theme changed, causing a chain reaction and resulting in a crash)
- Fixes added: removed unused/undeclared glareRef (+ the glare is already controlled via CSS variables anyway), optimized updateSettings and cycleTheme with useCallback to stop the re-render loops
- Cleaned some lint errors: fixed invalid ease: "spring" changed to "linear" for background rotation), fixed SettingsDialog transition types using as const, fixed missing type import in Example
- Mise à jour qualité de vie et cohérence — v2026.06.06, June 06, 2026
- Lens Changes: Lag: Resolved some issues with hover lag, i'm still trying to pinpoint the issue., Bento changes: Fixed gaps in bento, looks a LOT cleaner.
- Typography changes!: different sizes, types, defaults, too much to really mention, Commit 3cb65c1, for more info
- composants: new widget: a new, minimal, material expressive weather widget!, composants refondus : les widgets « le logiciel devrait être lisible... », « yearprog » et « je ne publie pas ce que je n'utiliserais pas... » entièrement réécrits pour suivre le nouveau widget météo
- sidebar consistency v2: added a thicker bottom border, overhauled page typeface, profile card fonts, and redid the "pages" header.
- Expressive and Consistency Overhaul Update! — v2026.06.05, June 05, 2026
- fonts: font types: added new font types such as font-expressive, and font-expressive-bold, site revamp: revamped pages such as the readme, which uses new font types and other sizing changes. home also gets these new changes, and so does every header., sidebar/navigation: used new font types on every navigation type.
- other changes: codebase: separated the codebase into many multiple files, finding and managing code is way cleaner., lens: fixed some lag that occured when scrolling on lag. - note, this bug is still happening BUT i managed to trim it down., redirects: fixed readme page from showing background hue saturation insanely bright when jumping stright to eneawork.it/readme, favicon: added fallback for crawlers that don't like the dynamic favicon.
- other notes: one of my most complicated updates yet., this was made with much love <3
- pride month update — v2026.06.01, June 01, 2026
- pride month special: rainbow wavy progress: implemented a liquid rainbow effect for all wavy progress bars., cycling pride flags: progress bars now dynamically cycle through Rainbow, Trans, Bi, Pan, Non-binary, and Lesbian flags every few seconds., saturation-proof: pride colors are rendered with raw hex palettes, ensuring they stay vibrant even when the rest of the site is desaturated.
- site integrity: maintenance: beefed up the .gitignore to keep the repo clean of build artifacts and environment secrets., gpush: another simple helper script i wrote for pushing quickly
- mobile performance & UI visibility — v2026.05.26, May 26, 2026
- mobile optimization: performance: disabled expensive SVG filters and backdrop blurs on mobile for actually smooth 60fps scrolling!, battery saver: throttled background star, dots, and hero flickering animations on mobile devices., 3D bento: disabled high-overhead 3D perspective and transforms for mobile screens.
- UI refinement: contrast: increased bento card background opacity to 60% for better readability against animated backgrounds., visibility: fixed invisible read entry text in blog on light theme by adding proper color overrides, polish: increased footer separator opacity and fixed missing gap in terminal specs card title.
- 3D Bento hit detection & anti-aliasing — v2026.05.25, May 25, 2026
- performance & stability: latency kill: removed the performance-intensive blur filters from hero animations to resolve FPS drops during initial load., svg optimization: reduced path segment density in wavy progress elements by 4x for smooth native-refresh rendering.
- 3D bento & interactivity: unified logic: refactored all cards across Home, Blog, and Readme to share a single high-fidelity 3D tilt and glare system., sink effect: switched to a natural sink tilt behavior (tilting away from cursor) for a more premium, responsive bento feel.
- rendering & anti-aliasing: edge polish: removed black lines and stupid aliasing artifacts using GPU isolation and hardware backface-visibility stuff., dynamic context: made sure 3D perspective only activates when needed, keeping standard 2D hovers perfectly perfect.
- lens lightbox fix & debug telemetry — v2026.05.24, May 24, 2026
- lens photography: lightbox recovery: fixed the expanded image lightbox layout, allowing borders and shadows to hug the photo aspect ratio., clipping correction: correctly routed anti-bleeding fixes (rounded-inherit and webkit-masking) to the grid preview items instead of the lightbox container.
- ui & styling: sidebar spacing: hid the 'Pages' label header on short windows and expanded navigation item gaps to stop outline rings from overlapping., pages icon: updated the sidebar 'Pages' icon to use a soft, muted surface background and a smooth 32% squircle border-radius., spring tuning: refined navigation spring solvers to settle with a smooth, premium feel and no excessive wiggling., scroll shadows: fixed scroll shadows/masks to load instantly on page refresh without needing a manual scroll trigger.
- developer telemetry: debug logging: integrated dry, lowercase console telemetry across page routing, image preloads, copy actions, and error catch events.
- blog filters & readme consistency polish — v2026.05.21_hotfix, May 21, 2026
- blog immersive UI: FILTERS ARE HERE! added a bounce filter system for the blog page with unique capsule state styling., better scaling: fixed 'read entry' button text stacking on mobile by adding dynamic padding and font-size scaling., tech: redesigned blog category tags to match the chip styling of the readme page., better motion: removed more CSS transition conflicts to enable zero latency spring physics on all blog interactions.
- readme refinement: better bento: added a 2-1-1-2-2 mobile grid pattern for the bio page., marker highlights: replaced generic bio highlighted text with a custom-styled, rotated 'marker' highlight effect., header scaling: added better icon and typography scaling to stop card headers from crowding borders on mobile.
- footer & global polish: footer stability: fixed footer buttons to keep consistent widths on mobile, preventing awkward line stacking layouts., spring tuning: refined global spring solvers for a smoother, less jittery interaction feel across all bento components. trust me, you'll feel the difference :)
- the readme makeover & more motion — v2026.05.21, May 21, 2026
- new immersive UI: matrix hero: completely overhauled the Readme page into an immersive bio that slides the sidebar away for total focus., solar composition: redesigned the background into a static diagonal solar arrangement with a pulsing primary-colored core., enea flicker: added a persistent and fluent character-flickering effect to the hero header.
- bento physics & polish: universal shift: synchronized all bento cards with high-stiffness spring physics (stiffness 400), enabling instant 'shift-up' hover feedback., identity section: added a high-impact bio section with a bold sans-serif font to replace the previous 'corporate' sharp look., rounded aesthetics: swapped hero font to font-bold-sans.
- performance & stability changes — v2026.05.18, May 18, 2026
- core optimization: April Fools logic: centralized IS_APR logic to a global constant, finally getting rid of hundreds of potential redundant Date object creations per second., memory management: fixed potential leaks and re-render loops in sidebar navigation and theme provider.
- rendering performance: component memoization: memoized all major page components (Home, Blog, Lens, etc.) and core building blocks (Card, SideItem, BotNav) to minimize main-thread load., WavyProgress SVG: optimized background SVGgen by reducing segment density and lowering fps for smoother wavyprogress animations., stable identity: now using useCallback for the global 'goto' function to prevent unnecessary child re-renders.
- UX & animation refinement: settings animation: resimplified the settings modal transition to a more performant fade/scale effect, getting rid of more lag issues on mobile and low-end devices., modal stability: improved touch-target feedback and removed heavy layout-morphing logic for a more responsive feel.
- settings & animation overhaul — v2026.05.13, May 13, 2026
- sidebar & navigation: page menu effects: added lots of effects to the sideitem's container in the sidebar (shadows, animations, etc), scrolling buttons: since pages now collapse when the window is too short, you can now press a button to scroll for you!, collapsed sidebar state: fixed pills and centered them correctly this time, centered side items: balanced the navigation rail items by horizontally centering them in the sidebar on desktop., squish: added bouncy, rotating spring animations to the scroll buttons. they squish when you click and pop in with some flair.
- settings modal & animation polish: settings expansion: completely overhauled the settings modal opening animation with a premium, squishy spring feel., precision morphing: moved the shared layout target to the icon container, eliminating text stretching during settings expansion/collapse., southeast bounce: added a dynamic southeast-drifting exit animation for the settings modal, providing a more fluid 'falling away' feel., markdown overhaul: completely redesigned the blog renderer with custom styles for headers, lists, and inline code. added a <spacer /> component for better vertical rhythm., changelog masonry: refactored the changelog layout to use a column-based flow, eliminating large vertical gaps between unevenly sized change groups., AMOLED mode: added a new toggle for pure black backgrounds, perfect for saving battery on OLED screens., physics locking: harmonized the spring math across the sidebar, mobile nav, and the modal itself so icons stay perfectly synchronized during expansion., theme pre-loading: pre-calculated HSL variables and disabled mount animations for custom sliders to ensure instant theme application without layout shift., stability: fixed a first-open shake bug on both mobile and desktop by stabilizing initial layout states., toggle refinement: synchronized the appearance mode toggle pill with the modal's physics, ensuring it doesn't drift during transitions., stability: fixed event bubbling and layout conflicts that caused the settings to force close when toggling focus mode., immersive sliders: implemented Material 3 Expressive style sliders for hue and saturation. ticks and handles are now vertical lines that stick out slightly beyond the track borders., bounce/squish sliders: added a juicy spring-loaded overshoot animation when dragging sliders past their boundaries, with dynamic transform origins for realistic stretching., modal stability: implemented scroll locking to prevent background displacement during quick scrolls., focus mode fixes: conditionalized layout synchronization to prevent modals from disappearing when toggling focus mode while they are open.
- logic changes: split the logic: actually separated the expanded and collapsed states inside SideItem., smart masking: added a CSS mask (nav-mask) that fades items out at the top and bottom., unique layout IDs: the expanded background now uses sidebar-expanded-bg and the collapsed capsule uses sidebar-mini-pill., clean transitions: since they're separate now, the expanded mode will properly fill the whole button background again without trying to follow the icon.
- sidebar styling & extra polish — v2026.05.08-B, May 08, 2026
- sidebar & navigation: collapsed sidebar revamp: completely overhauled the sidebar collapsed state. featuring m3e style pills-on-icons + text below for an immersive touch!, pixel-perfect centering: made sure collapsed pills to top-3px for exact vertical alignment with icons., m3 grouping: restored isFirst logic to the settings button due to a bug., visual separation: added a subtle side border to the non-floating sidebar and increased separator visibility., ux spacing: increased vertical gap between settings and expand controls in collapsed state for better ergonomics.
- the lens overhaul (m3 expressive!) — v2026.05.08, May 08, 2026
- photography overhaul: m3e ui: completely redesigned the expanded view into a sleek, floating island structure inspired by google's recent "floating pill" nav design., the floating islands themselves: metadata and controls are now condensed into highly-rounded capsules, providing more breathing room for the photography itself., better and more tactile feedback: added ultra snappy spring animations to navigation and close buttons, including a physical squeeze/rotate effect on click., performance and preloading: added background preloading for the carousel, making sure the next and previous pixels are ready before you even click., raw view: added a 'view raw photo' action to the info hub for one-click access to full-resolution images, without the UI getting in the way., scroll isolation: fixed a long-standing bug where the background page would scroll while an image was expanded.
- other changes: geometricPrecision: forced the SVG to use the highest quality rendering hints, so no more jagged steps on the curves., double segment density: doubled path resolution to keep curves looking smooth and fluid, even at high zoom levels., overflow & joins: added `overflow: visible` and `stroke-linejoin: round` to prevent tiny pixel-gaps and sharp edgs that appers on the waves.
- home and consistency update — v2026.05.02, May 02, 2026
- home & blog fixes: Year Prog Chip: completely overhauled the year progress chip and added a WavyProgress component., Fonts: re-formatted lots of text to use the font-black instead of font-display. also reworked some of the project section including projects & research, and view project fonts., Expressive Buttons: updated the blog's 'read full entry' button to match the 'explore more' styling, including a 24px to 40px morphing border radius on hover.
- sidebar fixes: Overhauled PFP section: completely changed the pfp container styling itself, as well as the animations., Fixed PFP centering: resolved an alignment bug where the profile picture was off-center when the sidebar was collapsed without the profile container., Auto-hide profile container: implemented a height-based guard (720px) that automatically enforces no-container mode in compact views to prevent layout squishing., profile section: moved the profile section further left since there was indeed room to do so.
- settings performance: fixed sidebar lag upon open
- m3 consistency revamp — v2026.05.01, May 01, 2026
- material 3 expressive component overhaul: slider redesign: using vanilla material 3 expressive slider (!almost! direct port from android 16) to the settings for new saturation and overhauled hue shift., switch redesign: same as slider, now uses android 16 expressive 2-icon style switch, saturation: a new customization option has arrived! saturation! you can now express your vibrancy depending on the mood or the setup, just how i like it :) - amoled potentially coming soon <3, toggle grouping: added settings toggle grouping so things don't get cluttered. introduced in v1.5.7-stable (m3-revamp-patches), profile container toggle: in the *sidebar* settings, there's a new toggle! profile container switch; which just toggles the profile container. introduced in v1.5.7-stable (m3-revamp-patches)
- component overhaul pre-deployment fixes: switch overhaul: rewritten with pixel-perfect dimensions (52x32) and symmetric 6px handle gaps for better visuals, switch stability: fixed inconsistent Y-axis positioning by standardizing centering with top: 50% and margin-top: -8px, slider refinement: moved icon color transitions to CSS to prevent oklch interpolation artifacts during saturation shifts
- global & theme fixes: saturation fix: transitioned all variable-based color animations from MotionValue to CSS transitions to stop "random" color cycling, flicker bug prevention: implemented a blocking theme-initialization script in index.html and switched to useLayoutEffect in ThemeProvider to eliminate a purple flash on reload, sidebar fixes: moved sidebar background animations to style/CSS to ensure stability during rapid navigation or theme changes
- liquid physics, fixes, and stability update! — v2026.04.30-B, Apr 30, 2026
- sidebar fixes & changes: profile makeover: wrapped the sidebar header in a nice rounded material container with expressive padding, pfp edge fix: squashed the bleed-through bug on pfp edges by switching to ring offsets and nested clipping, liquid physics: implemented "ultra-low" mass spring physics for sidebar navigation, creating a "mercury-drop" flow effect, md3 update refinements: added variable stroke weights and tonal containers for navigation items, aligning with android 16/m3e design cues, bug fix: squashed a hyperspecific rendering bug that caused corners to sharpen during rapid hovering, performance: removed heavy filters and blurs to ensure locked 60fps during complex sidebar transitions
- MD3 makeover and tactile shift — v2026.04.26, Apr 26, 2026
- material design 3 makeover: sidebar overhaul: better use of vertical space and refined page section with proper M3 navigation standards, sidebar cleanup: removed redundant hardware specs and quick theme toggles to focus on navigation, floating sidebar: undock the sidebar with rounded corners for a modern, airy feel, visual depth: added a subtle noise/grain overlay to containers for a more tactile, organic texture
- animations and feedback: 120Hz mode: added high-refresh animation toggle for snappier, low-latency spring physics, signature borders: standardized 6px "signature" borders across all cards, chips, and interactive elements, hover feedback: refined hover animations for cards and chips with scale-up and border-accent effects
- performance and stability: lens recovery: fixed ReferenceError that caused the gallery to blank out (oops), sidebar contrast: fixed "darkened" active pill by correcting background layering, lens architecture: moved border hover to ::after pseudo-elements for better paint performance, GPU optimization: swapped backdrop-blur-xl for backdrop-blur-md and added will-change: transform to gallery images, motion refinement: simplified gallery reveal animations to reduce simultaneous compositor work, grain engine: replaced live SVG filters with a high-performance tiled background noise engine, focus mode fix: optimized blur logic to skip heavy image grids, saving massive GPU cycles, layer management: removed excessive will-change hints to prevent browser layer explosion
- debug and security: debug overhaul: added layout grid lines and technical build metrics (CPU/GPU/OS) inside the debug view, safety first: implemented a confirmation modal for debug mode to prevent accidental layout confusion, terminal refinement: added hover states and standardized 6px borders to the lore terminal
- launch: enea shorten! — v2026.03.16-C, Mar 16, 2026
- backend progress: core: a high-performance URL shortening engine using Express.js and SQLite with better-sqlite3, persistence strategy: used Vercel-optimized SQLite storage using temp link state (not sorry), vanity and security: added route shadowing protection (dash, api, static, r, etc.) to prevent link hijacking of routes, smart slug gen: custom 6-character hex slug generator with collision-avoidance do-while logic etc etc
- post fixes: source tracking: `src` tagging for analytics across web/mobile entry points, responsive fash: designed the shortener dashboard with mobile first card layouts and desktop optimized tables, protocol strictness: deep URL validation to make sure theres only valid http/https protocols and 2048-char length limits, better vercel integration: optimized vercel.json with rewrites and serverless function routing for high density performance
- polish and performance II — v2026.03.16, Mar 16, 2026
- ux and motion: FAB positioning: fixed "scroll to top" button overlapping the sidebar when flipped, mobile performance: added hardware acceleration (GPU) to the mobile navbar for 120fps fluid motion, card responsiveness: eliminated useless hover delays and transition conflicts across all pages, spring physics: some refined card animations with high stiffness springs for better instant feedback
- lens and performance: proactive loading: increased lens viewport margin to 200px to trigger animations before entry, priority assets: added eager loading for initial lens gallery rows to remove white flashes, scroll smoothness: refined the gallery entry logic for more consistent performance during more rapid scrolling
- polish and performance — v2026.03.15-B, Mar 15, 2026
- ux and motion: animation lag: fixed card hover animations to be instant and responsive, removing the exit delay, fluid transitions: page transitions should now use spring physics and custom bezier curves for a bouncier feel, navigation refinement: fixed active pill centering and disabled distracting tilt animations on mobile, m3 compliance: removed bottom nav rounding to align with m3 standards, motion GPU: optimized all major animations to run on hardware acceleration
- readme and identity: immersion mode: added "expand" modal functionality for technical cards, improving readability on narrow screens, mobile scaling: optimized PGP fingerprint, chip text, and stack grids for better information density on mobile, stack cleanup: pruned standard tech from stacks to focus on core specialties (Rust, RE, Security)
- settings and ui: appearance Sliding: theme mode selector now uses a smooth sliding indicator instead of abrupt switching, themed hue shift: added a vibrant gradient track and live feedback to the custom color slider, visual balance: fixed toggle switch padding symmetry and improved 404 page layout/spacing, theme-aware lens: expanded image view now respects system theme (no longer hardcoded to dark)
- visual balance — v2026.03.15, Mar 15, 2026
- architecture: changelog migration: decoupled devlogs from the blog feed into a dedicated system-level view, routing overhaul: added support for deep linked changelog entries, data schema: structured ChangelogEntry interface for better integrity
- UX/UI: global scaling: changed root font-size to 90% for optimized information density, things now look much better on desktop and mobile., settings integration: added "other info" section to settings for easy access to version history, instead of cluttering blog, sidebar refinement: fixed sidebar height and positioning for the new global scale. stuff fits now!
- immersion & integrity overhaul — v2026.03.06, Mar 06, 2026
- new in readme: bio overhaul: replaced filler cards with biography and mission sections, PGP integration: added official PGP Fingerprint to header
- new in lens: navigation overhaul: new structured layout with centered controls, typography sync: swapped dev mono for site wide display typography, optimized lightbox: removed aggressive blurs and fixed description cutoffs, bento layout: dynamic layout with better performance
- tweaks and immersion: dynamic theme favicon: favicon now updates based on theme accent color, focus mode (Zen): full-immersion mode with DOF blurs, brutalist mode: option to remove all border radiuses, developer font: global override to JetBrains Mono
- performance and utility: lens optimization: reduced image assets from ~200MB to ~40MB (WebP conversion), PWA support: fully installable via custom manifest, RSS feed: official support (https://eneawork.it/rss.xml), deep SEO: added OpenGraph and JSON-LD structured data