[{"data":1,"prerenderedAt":419},["ShallowReactive",2],{"$YaktgyrXYp":3,"about-projects":268},{"id":4,"title":5,"aboutCopy":6,"aboutLabel":6,"aboutLinkLabel":6,"aboutLinkTo":6,"aboutTitle":6,"body":7,"contactCopy":6,"contactEmailLabel":6,"contactGitHubLabel":6,"contactLabel":6,"contactLinkedInLabel":6,"contactLocation":6,"contactTitle":6,"description":254,"experienceIntro":6,"experienceLabel":6,"experienceTitle":6,"extension":255,"eyebrow":256,"heroAvailability":6,"heroLabel":6,"heroLede":6,"heroLocation":6,"heroPrimaryAction":6,"heroPrimaryTo":6,"heroSecondaryAction":6,"heroSecondaryTo":6,"heroTitle":6,"lede":257,"meta":258,"navigation":259,"path":260,"portrait":6,"practiceLabel":6,"practiceTitle":6,"resumeBackgroundLabel":6,"resumeBackgroundTitle":6,"resumeCustomers":261,"resumeCustomersLabel":6,"resumeCustomersTitle":6,"resumeEducationLabel":6,"resumeEmail":6,"resumeLinks":262,"resumeLocation":6,"resumePrintLabel":6,"resumeProfileLabel":6,"resumeProfileTitle":6,"resumeProjectsLabel":6,"resumeProjectsTitle":6,"resumeSkills":263,"resumeSkillsLabel":6,"resumeSkillsTitle":6,"resumeSummary":6,"resumeTitle":6,"seo":264,"seoDescription":6,"seoTitle":265,"slug":6,"stem":266,"workLabel":6,"workLede":6,"workProjectsTitle":6,"workTitle":6,"__hash__":267},"pages/about.md","About Me",null,{"type":8,"value":9,"toc":236},"minimark",[10,14,17,22,25,30,33,46,49,53,56,59,70,73,77,80,83,94,97,100,104,108,111,115,118,122,125,129,132,135,139,142,145,150,153,157,160,163,199,218,233],[11,12,13],"p",{},"I'm Arne, a Belgium-based senior software engineer with more than a decade of experience, mostly focused on the front end. I like working on the parts of software where a lot is happening at once: complex interactive tools that still need to feel reliable, clear, and calm to use.",[11,15,16],{},"My work sits between engineering, interaction design, and product thinking. I care about how something looks, how it behaves, and whether the structure underneath will still make sense when the product has to evolve.",[18,19,21],"h2",{"id":20},"a-gradual-move-toward-the-front-end","A gradual move toward the front end",[11,23,24],{},"I always knew I wanted to work on the web, but I did not start out as a front-end specialist. That became my focus gradually, through jobs that let me see more of the whole problem each time.",[26,27,29],"h3",{"id":28},"_20142018-ris","2014–2018 / RIS",[11,31,32],{},"My first job was at a small agency, building WordPress sites for local police, event organisers, businesses, portfolios, and many others. I handled most of the lifecycle:",[34,35,36,40,43],"ul",{},[37,38,39],"li",{},"designing and developing the sites",[37,41,42],{},"taking them live and keeping them running",[37,44,45],{},"working on SEO and email campaigns",[11,47,48],{},"Owning those steps taught me how the pieces fit together. It also made switching between design thinking and implementation feel natural. This is where CSS and SCSS really hooked me: they went from “just styling” to something I wanted to understand properly. My JavaScript was mostly simple jQuery at the time, but the seeds were planted.",[26,50,52],{"id":51},"_20182020-nanopixel","2018–2020 / Nanopixel",[11,54,55],{},"At Nanopixel, I moved into more product-like interactive work. The company brought together space, visualisation, and technology, and I worked mainly on Showreal, a sales tool for real-estate showrooms. It was a kiosk setup with a touch screen and a wall of TVs, powered by web technology and Node.js behind the scenes.",[11,57,58],{},"Some things I am especially proud of there:",[34,60,61,64,67],{},[37,62,63],{},"helping build Showreal from the ground up",[37,65,66],{},"creating a small custom framework for the tool",[37,68,69],{},"solving unusual kiosk and touch problems, including a custom physical cylinder with specific touch-points used for navigation",[11,71,72],{},"I also worked closely with an experienced freelancer who pushed my JavaScript forward. We did not have linters or fancy tooling, but we agreed on how to write clean code and followed those agreements consistently. Over time, our code became indistinguishable. That collaboration shaped how I think about code quality, consistency, and communication.",[26,74,76],{"id":75},"_2020now-kiswe","2020–now / Kiswe",[11,78,79],{},"I have always been drawn to multimedia. When I started studying, I was genuinely torn between video production and development. Working at Kiswe on tools for live-stream production feels like those two paths finally meeting.",[11,81,82],{},"I work mainly on Kiswe Studio, and sometimes Kiswe Command Center: products used to manage and produce live streams and fan-engagement experiences. Kiswe builds technology around cloud production, streaming, distribution, and interactive digital experiences. The problems are niche and interesting: complex interfaces, real-time constraints, and the added pressure that comes with anything live.",[11,84,85,86,93],{},"I also helped build the software behind Olympic Broadcasting Services' ",[87,88,92],"a",{"href":89,"rel":90},"https://www.kiswe.com/news/reflections-from-the-2024-olympics",[91],"nofollow","Athlete Moment",", used at the Olympic Games to connect athletes with friends and family through live video after their events. It brings together the parts of the job I enjoy: real-time communication, live production, and an interface that needs to make a meaningful interaction feel simple.",[11,95,96],{},"In the team, I am both a front-end specialist and a bridge between product and engineering. I pushed for building our own shared component library to keep the look and feel consistent across products, and took the lead on that library: defining patterns, shaping component APIs, and making sure we solve problems once in a reusable way.",[11,98,99],{},"Across every company I have worked at, I have ended up as the go-to person for CSS: the one people bring strange layout issues and styling bugs to when they do not make sense at first glance.",[18,101,103],{"id":102},"the-way-i-work","The way I work",[26,105,107],{"id":106},"_01-complex-tools-simple-experiences","01 / Complex tools, simple experiences",[11,109,110],{},"I enjoy complex, interactive tools behind the scenes, but I want the experience to feel calm and understandable for the person using it.",[26,112,114],{"id":113},"_02-clean-maintainable-readable-code","02 / Clean, maintainable, readable code",[11,116,117],{},"I like solving hard UI problems, but I care just as much about leaving code behind that someone else can step into without pain.",[26,119,121],{"id":120},"_03-bridging-design-and-development","03 / Bridging design and development",[11,123,124],{},"I am comfortable talking in both visual and technical terms. I enjoy turning design ideas into well-structured components and moving a product toward a coherent system instead of a collection of one-off solutions.",[26,126,128],{"id":127},"_04-product-minded-and-ux-focused","04 / Product-minded and UX-focused",[11,130,131],{},"I do not only ask “how do we build this?” but also “why are we building this?” and “how will it feel in real use?”. I like thinking ahead and doing the extra work that makes a product easier to extend and nicer to use later.",[11,133,134],{},"What keeps me motivated is that the products I work on are live and alive. They evolve. Knowing that decisions I make today will either pay off or come back to haunt me makes me care about structure, quality, and UX.",[18,136,138],{"id":137},"side-projects-and-creative-experiments","Side projects and creative experiments",[11,140,141],{},"Outside my day job, I build tools I want to use and experiment with code, visuals, and sound. Some become reusable libraries or self-hosted applications; others are a way to explore an interaction or a visual idea.",[11,143,144],{},"A few examples:",[146,147],"about-project-list",{":items":148,"demo-label":149},"projects","Live demo",[11,151,152],{},"I also like poking at smaller WebGL and audio-reactive experiments whenever something interesting pops into my head.",[18,154,156],{"id":155},"beyond-code","Beyond code",[11,158,159],{},"I am not only about components and layouts. I am drawn to things that resist being understood all at once: living systems, strange forms of intelligence, recursive patterns, and the uneasy spaces where the familiar becomes alien.",[11,161,162],{},"When I am not deep in front-end work, you will probably find me:",[34,164,165,172,178,185,192],{},[37,166,167,168],{},"listening to or exploring new ",[169,170,171],"strong",{},"music",[37,173,174,177],{},[169,175,176],{},"gaming",", often over-analysing UI and interaction patterns along the way",[37,179,180,181,184],{},"exploring ",[169,182,183],{},"art and tech",", where creativity and code meet",[37,186,187,188,191],{},"working on ",[169,189,190],{},"home automation"," and self-hosted systems",[37,193,194,195,198],{},"hanging out with my dogs, ",[169,196,197],{},"Yuki & Shiro",", who have strong opinions about break times",[11,200,201,202,205,206,209,210,213,214,217],{},"I regularly disappear into internet rabbit holes about ",[169,203,204],{},"psychology"," and ",[169,207,208],{},"biology",", even though my actual knowledge of either is modest. That is part of the appeal: there is always another mechanism, behaviour, or odd connection that makes the world feel larger than I thought it was. ",[169,211,212],{},"Animals"," fascinate me in general, and octopuses in particular. Their intelligence feels completely unlike ours, which makes them difficult to stop thinking about. ",[169,215,216],{},"Mushrooms and fungi"," have the same pull for me: quiet, strange, interconnected life forms that seem to follow rules we only partly understand.",[11,219,220,221,224,225,228,229,232],{},"I also have a soft spot for ",[169,222,223],{},"Lovecraftian horror",", ",[169,226,227],{},"fractals",", and especially ",[169,230,231],{},"Mandelbulbs",". They all play with the same tension between pattern and the unknowable: something can be intricate enough to invite close inspection while remaining strange enough to resist becoming familiar. That balance between structure and mystery is probably part of why I enjoy both engineering and creative experiments.",[11,234,235],{},"This portfolio is a place to get to know me, see what I have worked on, and explore the kind of problems and projects that keep me curious. I am happiest when there is something complicated to make clearer, and something new to learn along the way.",{"title":237,"searchDepth":238,"depth":238,"links":239},"",2,[240,246,252,253],{"id":20,"depth":238,"text":21,"children":241},[242,244,245],{"id":28,"depth":243,"text":29},3,{"id":51,"depth":243,"text":52},{"id":75,"depth":243,"text":76},{"id":102,"depth":238,"text":103,"children":247},[248,249,250,251],{"id":106,"depth":243,"text":107},{"id":113,"depth":243,"text":114},{"id":120,"depth":243,"text":121},{"id":127,"depth":243,"text":128},{"id":137,"depth":238,"text":138},{"id":155,"depth":238,"text":156},"Learn more about my journey as a Belgium-based software engineer, my love for complex interactive tools, and how I bridge design and development to build product-focused, user-friendly experiences.","md","ABOUT / THE PERSON BEHIND THE SYSTEMS","A senior software engineer drawn to the space where complex products, thoughtful interfaces, and durable systems meet.",{},true,"/about",[],[],[],{"title":5,"description":254},"About Me | Arne Decant","about","MUfKTmRPr62NLCLyWsBU77_1LXM0O1ZpzdHG0xlH918",[269,296,321,353,371,400],{"id":270,"title":271,"abbreviation":6,"category":6,"confidential":272,"description":273,"era":6,"extension":255,"featureWeight":6,"featured":259,"github":274,"link":275,"logo":276,"meta":279,"order":287,"resumeFeatured":259,"role":6,"slug":288,"status":6,"stem":289,"summary":290,"tech":291,"thumbnail":6,"timeline":6,"__hash__":295},"projects/projects/nyxkit.md","NyxKit",false,"NyxKit is my personal design system and component library that powers multiple apps and experiments.","https://github.com/nyxkit/nyx-kit","https://nyxkit.github.io/nyx-kit",{"src":277,"alt":278},"/images/nyx-kit-logo.svg","Nyx Kit purple ribbon monogram logo",{"path":280,"body":281},"/projects/nyxkit",{"type":8,"value":282,"toc":285},[283],[11,284,273],{},{"title":237,"searchDepth":238,"depth":238,"links":286},[],"1","nyxkit","projects/nyxkit","A reusable Vue 3 component library and design system used across my applications and experiments, combining TypeScript component APIs, SCSS styling, and shared application patterns.",[292,293,294],"Vue 3","TypeScript","SCSS","vUl6iIJ_bYbeiFSj9pr1SrRKewtV4UVZlUXN-hPKDrE",{"id":297,"title":298,"abbreviation":6,"category":6,"confidential":272,"description":299,"era":6,"extension":255,"featureWeight":6,"featured":259,"github":300,"link":301,"logo":302,"meta":305,"order":313,"resumeFeatured":259,"role":6,"slug":314,"status":6,"stem":315,"summary":316,"tech":317,"thumbnail":6,"timeline":6,"__hash__":320},"projects/projects/nyx-fission.md","Nyx Fission","Nyx Fission handles media sampling, particle rendering, resizing, and cleanup behind a framework-independent API. The live playground lets you explore its themes, luma keying, entrance animations, and pointer interactions.","https://github.com/NyxKit/nyx-fission","https://nyxkit.github.io/nyx-fission/",{"src":303,"alt":304},"/images/nyx-fission-logo.svg","Nyx Fission particle F logo",{"path":306,"body":307},"/projects/nyx-fission",{"type":8,"value":308,"toc":311},[309],[11,310,299],{},{"title":237,"searchDepth":238,"depth":238,"links":312},[],"2","nyx-fission","projects/nyx-fission","A framework-independent WebGL library that transforms images, video, and webcam feeds into interactive particle fields. Handles media sampling, rendering, resizing, and cleanup; powers my portfolio's animated portrait.",[293,318,319],"WebGL","Three.js","SEpBuIqAh2mzmBqPEAQU31dCwP4ranuRknHzTyBWHWo",{"id":322,"title":323,"abbreviation":6,"category":324,"confidential":272,"description":325,"era":326,"extension":255,"featureWeight":6,"featured":259,"github":327,"link":6,"logo":328,"meta":331,"order":342,"resumeFeatured":272,"role":343,"slug":344,"status":345,"stem":346,"summary":347,"tech":348,"thumbnail":6,"timeline":6,"__hash__":352},"projects/projects/anthos.md","Anthos","Local-first plant monitoring platform","Anthos explores the full product loop from physical sensor nodes to a durable, home-hosted dashboard. Nodes push telemetry to a TypeScript server, which ingests readings, stores them, exposes API data, and serves the dashboard from the same deployment.","Recent work","https://github.com/NyxKit/anthos",{"src":329,"alt":330},"/images/anthos-logo.svg","Anthos purple circuit leaf logo",{"path":332,"body":333},"/projects/anthos",{"type":8,"value":334,"toc":340},[335,337],[11,336,325],{},[11,338,339],{},"The current direction is plant monitoring and care. Auto-watering is outside the MVP and is not presented as a shipped feature.",{"title":237,"searchDepth":238,"depth":238,"links":341},[],"3","Product engineer","anthos","Personal project in active development","projects/anthos","A local-first plant monitoring and care platform connecting M5Stack nodes, a TypeScript ingestion server, and a Vue dashboard.",[349,293,350,292,351],"M5Stack AtomS3 Lite","Express","Tauri","0ZaH5LEyyIbgQ_QQwrDeGnjH7ZJEdCZwvWA92u2zbJk",{"id":354,"title":355,"abbreviation":356,"category":6,"confidential":272,"description":237,"era":6,"extension":255,"featureWeight":6,"featured":259,"github":357,"link":358,"logo":359,"meta":360,"order":342,"resumeFeatured":272,"role":6,"slug":366,"status":6,"stem":367,"summary":368,"tech":369,"thumbnail":6,"timeline":6,"__hash__":370},"projects/projects/video-projection-mapping.md","Video Projection Mapping","VPM","https://www.github.com/arnedecant/video-projection-mapping","https://arnedecant.github.io/video-projection-mapping",{"alt":356},{"path":361,"body":362},"/projects/video-projection-mapping",{"type":8,"value":363,"toc":364},[],{"title":237,"searchDepth":238,"depth":238,"links":365},[],"video-projection-mapping","projects/video-projection-mapping","An interactive 3D video projection mapping application built with Three.js that creates dynamic, mask-based video projections on 3D cube grids. Users can interact with different projection patterns through mouse hover effects and switch between various video-mask combinations.",[318,293,294],"iYAROpU-wTcnnJgWfcDFctzVttYTaKr7zlHX9IrmqDo",{"id":372,"title":373,"abbreviation":6,"category":374,"confidential":272,"description":375,"era":326,"extension":255,"featureWeight":6,"featured":259,"github":376,"link":6,"logo":377,"meta":380,"order":391,"resumeFeatured":259,"role":343,"slug":392,"status":345,"stem":393,"summary":394,"tech":395,"thumbnail":6,"timeline":6,"__hash__":399},"projects/projects/nyx-notes.md","Nyx Notes","Self-hosted Markdown notes product","Nyx Notes keeps notes as plain Markdown files, with a Rust workspace providing filesystem storage, an Axum server, authentication, a CLI, and a Tauri shell. The Vue application uses Nyx Kit and NyxEditor, with REST and typed SSE subscriptions for live note and vault data.","https://github.com/NyxKit/nyx-notes",{"src":378,"alt":379},"/images/nyx-notes-logo.svg","Nyx Notes lavender N note logo",{"path":381,"body":382},"/projects/nyx-notes",{"type":8,"value":383,"toc":389},[384,386],[11,385,375],{},[11,387,388],{},"Comments live in JSON sidecars anchored to selected text. Optional end-to-end encryption and AI are future directions, not shipped features.",{"title":237,"searchDepth":238,"depth":238,"links":390},[],"4","nyx-notes","projects/nyx-notes","A self-hosted notes application in active development, with plain Markdown files as its source of truth. Combines a Rust backend, Vue interface, CLI, and Tauri shell, with REST and typed SSE for live updates.",[396,292,351,397,398],"Rust","REST","SSE","bDLaOoQPo2KAohJRp1j1AuqPRY7Hwy_i5eZrsqBQgUk",{"id":401,"title":402,"abbreviation":403,"category":6,"confidential":272,"description":237,"era":6,"extension":255,"featureWeight":6,"featured":259,"github":404,"link":405,"logo":406,"meta":407,"order":391,"resumeFeatured":272,"role":6,"slug":413,"status":6,"stem":414,"summary":415,"tech":416,"thumbnail":6,"timeline":6,"__hash__":418},"projects/projects/webcam-audio-visualiser.md","Webcam Audio Visualiser","WAV","https://github.com/arnedecant/audio-visualiser","https://arnedecant.github.io/audio-visualiser",{"alt":403},{"path":408,"body":409},"/projects/webcam-audio-visualiser",{"type":8,"value":410,"toc":411},[],{"title":237,"searchDepth":238,"depth":238,"links":412},[],"webcam-audio-visualiser","projects/webcam-audio-visualiser","An interactive 3D audio-visual experience that transforms your webcam feed into a dynamic particle matrix. The application maps video pixels onto particles arranged on a 3D plane and animates them in real-time based on audio frequency analysis, creating a mesmerizing visual representation of music.",[417,318,293,294],"Vue","ENP_dfvRcJVAnZ-_VIQ6_bstDUxorrshYixXU-6YTg0",1789563177664]