PageSourceSearch

https://www.charles-axel.com/

html charles-axel.com collected 2026-10-09 22:48:07 UTC 15,681 bytes, 33 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en-US">
3  <head>
4    <meta charset="utf-8">
5    <meta name="viewport" content="width=device-width,initial-scale=1">
6    <title>👋 · Charles-Axel Pauwels</title>
7    <meta name="description" content="I'm Charles-Axel, senior software engineer, UX designer, and founder of three different startups. I navigate the space between code, design and business.">
8    <link rel="stylesheet" href="/assets/style.69d94425.css">
9    <link rel="modulepreload" href="/assets/chunks/ContactForm.8a09fd62.js">
10    <link rel="modulepreload" href="/assets/app.a1ee5859.js">
11    <link rel="modulepreload" href="/assets/index.md.3a42f0c5.lean.js">
12    
13    <link href="/assets/IBMPlexSans-Regular-Latin1.woff2" rel="preload" as="font" type="font/woff2" crossorigin="">
14  <link href="/assets/IBMPlexSans-Bold-Latin1.woff2" rel="preload" as="font" type="font/woff2" crossorigin="">
15  <link href="/assets/IBMPlexSerif-Italic-Latin1.woff2" rel="preload" as="font" type="font/woff2" crossorigin="">
16  
16<script src="/amp/amp-story-player-v0.js" async="true" fetchpriority="low"></script>
16
17  
17<script src="https://widget.tappable.io/index.js" type="module" async="true" defer="true" fetchpriority="low" crossorigin="true"></script>
17
18  <link href="/amp/amp-story-player-v0.css" rel="stylesheet" type="text/css" media="print" onload="this.media=&quot;all&quot;; this.onload=null;" fetchpriority="low">
19  <link href="/favicon.ico" rel="icon" sizes="any" fetchpriority="low">
20  <link href="/favicon.svg" rel="icon" type="image/svg+xml" fetchpriority="low">
21  <meta property="og:image" content="https://www.charles-axel.com/images/og.png">
22  <meta name="twitter:card" content="summary_large_image">
23  
23<script src="https://sa.charles-axel.com/latest.js" async="true" defer="true"></script>
23
24  
24<script id="check-dark-light">(()=>{const e=localStorage.getItem("vitepress-theme-appearance"),a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
24
25  </head>
26  <body>
27    <div id="app"><div class="w-full min-h-screen flex"><div class="bg-zinc-50 dark:bg-black flex-grow"></div><div class="max-w-6xl flex-shrink-0 w-full"><div class="flex"><div class="hidden print:hidden md:block md:print:hidden top-0 h-screen w-64 flex-shrink-0 bg-zinc-50 dark:bg-black sticky overflow-y-auto"><aside><div class="mx-5 my-3.5"><div class="flex space-x-2 items-center"><img src="/favicon.svg" class="w-5 h-5"><a href="/" class="hover:text-primary hdr:hover:text-primary-hdr p-2 text-sm font-medium focus:outline-none focus-visible:ring-2 focus-visible:ring-primary hdr:focus-visible:ring-primary-hdr text-zinc-700 dark:text-zinc-300"> Charles-Axel Pauwels </a></div></div><div class="m-5 divide-y-2 divide-dotted divide-black/5 dark:divide-white/10"><!--[--><div class="py-2 first:pt-0 last:pb-0 space-y-2"><!--[--><!----><ul id="headlessui-disclosure-panel-34" class="text-zinc-700 dark:text-zinc-300 font-medium text-base md:text-sm flex flex-col"><!--[--><li><a href="/" class="block py-1.5 text-primary hdr:text-primary-hdr">Home</a></li><li><a href="/cv" class="block py-1.5 hover:text-black dark:hover:text-white">CV</a></li><!--]--></ul><!--]--></div><div class="py-2 first:pt-0 last:pb-0 space-y-2"><!--[--><button id="headlessui-disclosure-button-35" type="button" aria-expanded="true" class="w-full py-3 flex justify-between items-center text-zinc-500 hover:text-zinc-600 dark:hover:text-zinc-400" aria-label="Toggle section"><span class="text-sm md:text-xs uppercase font-mono">Projects</span><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" class="w-4 h-4 flex-shrink-0"><path d="M24 0v24H0V0h24z" fill="none"></path><path d="M7.41 18.59 8.83 20 12 16.83 15.17 20l1.41-1.41L12 14l-4.59 4.59zm9.18-13.18L15.17 4 12 7.17 8.83 4 7.41 5.41 12 10l4.59-4.59z"></path></svg><!----></button><ul id="headlessui-disclosure-panel-36" class="text-zinc-700 dark:text-zinc-300 font-medium text-base md:text-sm flex flex-col"><!--[--><li><a href="/tappable" class="block py-1.5 hover:text-black dark:hover:text-white">Tappable</a></li><li><a href="/boost" class="block py-1.5 hover:text-black dark:hover:text-white">Boost (2018-2019)</a></li><li><a href="/overview" class="block py-1.5 hover:text-black dark:hover:text-white">Overview (2016-2018)</a></li><li><a href="/red-bull-tv" class="block py-1.5 hover:text-black dark:hover:text-white">Red Bull TV (2014-2016)</a></li><!--]--></ul><!--]--></div><div class="py-2 first:pt-0 last:pb-0 space-y-2"><!--[--><button id="headlessui-disclosure-button-37" type="button" aria-expanded="true" class="w-full py-3 flex justify-between items-center text-zinc-500 hover:text-zinc-600 dark:hover:text-zinc-400" aria-label="Toggle section"><span class="text-sm md:text-xs uppercase font-mono">Thoughts</span><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" class="w-4 h-4 flex-shrink-0"><path d="M24 0v24H0V0h24z" fill="none"></path><path d="M7.41 18.59 8.83 20 12 16.83 15.17 20l1.41-1.41L12 14l-4.59 4.59zm9.18-13.18L15.17 4 12 7.17 8.83 4 7.41 5.41 12 10l4.59-4.59z"></path></svg><!----></button><ul id="headlessui-disclosure-panel-38" class="text-zinc-700 dark:text-zinc-300 font-medium text-base md:text-sm flex flex-col"><!--[--><li><a href="/thoughts/cloudflare-tv" class="block py-1.5 hover:text-black dark:hover:text-white">Cloudflare TV</a></li><li><a href="/thoughts/mpesa" class="block py-1.5 hover:text-black dark:hover:text-white">MPESA</a></li><!--]--></ul><!--]--></div><!--]--></div></aside></div><div class="w-full"><!--[--><nav class="print:hidden bg-white/80 dark:bg-zinc-900/80 backdrop-blur-md sticky top-0 z-30" data-v-96430915><div class="mx-auto px-4 md:px-6 lg:px-8" data-v-96430915><div class="flex flex-row items-center justify-between h-16 gap-5" data-v-96430915><button class="md:hidden w-10 h-10 flex-shrink-0 p-2 rounded focus:outline-none focus-visible:ring-2 focus-visible:ring-primary hdr:focus-visible:ring-primary-hdr" aria-label="Open menu" data-v-96430915><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" class="text-zinc-700 dark:text-zinc-300" data-v-96430915><path d="M0 0h24v24H0V0z" fill="none"></path><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"></path></svg></button><div class="hidden md:flex w-full justify-end gap-3" data-v-96430915><!--[--><!--[--><a href="/contact" class="text-zinc-700 dark:text-zinc-300 hover:bg-black/5 dark:hover:bg-white/5 hover:text-primary hdr:hover:text-primary-hdr px-3 py-2 rounded-md text-sm font-medium focus:outline-none focus-visible:ring-2 focus-visible:ring-primary hdr:focus-visible:ring-primary-hdr" data-v-96430915>Contact me</a><!----><!--]--><!--]--></div><div class="flex-shrink-0 relative" data-v-96430915><div class="flex" data-v-96430915><button id="headlessui-menu-button-39" type="button" aria-haspopup="true" aria-expanded="false" class="p-0.5 rounded-full hover:bg-black/5 dark:hover:bg-white/5" data-v-96430915><span class="sr-only" data-v-96430915>
27Open contact menu</span><img fetchpriority="low" class="object-cover h-8 w-8 rounded-full" src="/images/profile.jpg?w=64&amp;h=64&amp;fit=crop" alt data-v-96430915></button></div><!----></div></div></div></nav><!----><!--]--><main class="w-full mb-6 overflow-hidden"><!--[--><!----><article class="container mx-auto px-4 py-8 md:p-8 lg:p-16"><!--[--><div class="mx-auto prose prose-zinc 2xl:prose-lg dark:prose-invert prose-lead:font-serif prose-lead:italic prose-lead:leading-loose prose-lead:lg:-mx-4 prose-figcaption:text-center prose-figcaption:-mt-5 prose-heading:break-after-avoid-page prose-h3:text-lg [&amp;:not(.flat)]:prose-img:rounded-lg [&amp;:not(.flat)]:prose-img:border prose-img:border-zinc-200 prose-img:dark:border-zinc-700 print:max-w-none print:prose-sm print:prose-a:no-underline print:prose-a:font-normal print:prose-a:text-inherit print:grayscale print:prose-figure:border-2 print:prose-figure:border-black print:prose-figure:break-inside-avoid print:prose-figure:border-dotted print:prose-figure:before:content-[&#39;Image_hidden_in_print&#39;] print:prose-figure:before:font-bold print:prose-figure:p-4 print:prose-figure:rounded-md print:prose-img:hidden print:prose-figcaption:text-left"><!----><!--[--><div style="position:relative;"><div data-v-815bbb9b><h1 id="hi-i-m-charles-axel" tabindex="-1" data-v-815bbb9b>Hi 👋 <br data-v-815bbb9b> I&#39;m <span class="pronouns whitespace-nowrap" data-v-815bbb9b>Charles-Axel</span> <a class="header-anchor" href="#hi-i-m-charles-axel" aria-hidden="true" data-v-815bbb9b>#</a></h1><p class="lead" data-v-815bbb9b>Nice of you to drop by!</p><p data-v-815bbb9b>Let me introduce myself — I&#39;m a senior software engineer, a UX designer, and a founder of three different startups. I navigate the space between code, design and business.</p><p data-v-815bbb9b>I&#39;m currently the CTO of <a href="/tappable" data-v-815bbb9b>Tappable</a>, a SaaS product that makes creating Web Stories a breeze. Check out these Stories made with Tappable.</p><!--[--><div class="print:hidden bg-zinc-50 dark:bg-white/[0.03] w-full rounded-lg overflow-hidden h-[220px] border border-zinc-200 dark:border-zinc-700"><!----></div><div data-nosnippet class="hidden print:flex break-inside-avoid not-prose border-2 border-black border-dotted rounded-md items-center p-2 space-x-4"><div class="w-16 h-16"><img src="/qr?c=https://capauwels.tappable.link/collection/v8z0eEcDwFT4bDrTiqdVS"></div><p class="font-bold">Scan to view stories</p></div><!--]--><p data-v-815bbb9b>I&#39;m experienced in the <a href="/red-bull-tv" data-v-815bbb9b>Entertainment</a>, <a href="/overview" data-v-815bbb9b>FinTech</a> and <a href="/boost" data-v-815bbb9b>Telecom</a> industries, having previously worked in those fields.</p><p data-v-815bbb9b>When I&#39;m not coding or designing products, I educate myself in other fields. Issues like mobility, the energy transition and social justice keep me thinking and acting. Follow me on <a rel="me" href="https://mastodon.charles-axel.com/@charles" data-v-815bbb9b>Mastodon</a> to learn more.</p><p data-v-815bbb9b>Apart from that, I enjoy riding my ebike, playing board games and cooking spicy food for my friends.</p><!--[--><!--[--><!--[--><form action="/api/contact" method="post" id="input_5" class="formkit-form block" name="form_3"><!--[--><div class="print:hidden"><!--[--><h2 id="get-in-touch" tabindex="-1" data-v-815bbb9b>Get in touch <a class="header-anchor" href="#get-in-touch" aria-hidden="true" data-v-815bbb9b>#</a></h2><!--]--><div class="cf-turnstile" data-sitekey="0x4AAAAAAAAu5Gy7TBYsqiLH"></div><div class="grid gap-5"><div class="col-span-2 sm:col-span-1"><!--[--><!--[--><div class="formkit-outer not-prose space-y-1 formkit-disabled:opacity-50" data-type="text"><!--[--><div class="formkit-wrapper"><!--[--><label for="input_6" class="formkit-label block mb-2 font-medium text-sm text-zinc-700 dark:text-zinc-300">Your name</label><!--]--><!--[--><div class="formkit-inner mb-2 p-px"><!--[--><!----><!--]--><!--[--><input placeholder="Jane Doe" type="text" class="formkit-input block rounded w-full bg-zinc-50 placeholder-zinc-300 dark:bg-white/[0.03] dark:placeholder-zinc-700 border-none ring-1 focus:ring-2 ring-zinc-200 dark:ring-zinc-800 focus:ring-primary hdr:focus:ring-primary-hdr focus:dark:ring-primary hdr:focus:dark:ring-primary-hdr focus:formkit-invalid:ring-red-400 focus:dark:formkit-invalid:ring-red-400" name="name" id="input_6"><!--]--><!--[--><!----><!--]--></div><!--]--></div><!--]--><!----><!--[--><!----><!--]--></div><!--]--><!--]--></div><div class="col-span-2 sm:col-span-1"><!--[--><!--[--><div class="formkit-outer not-prose space-y-1 formkit-disabled:opacity-50" data-type="text"><!--[--><div class="formkit-wrapper"><!--[--><label for="input_7" class="formkit-label block mb-2 font-medium text-sm text-zinc-700 dark:text-zinc-300">Your email</label><!--]--><!--[--><div class="formkit-inner mb-2 p-px"><!--[--><!----><!--]--><!--[--><input placeholder="[email protected]" type="text" class="formkit-input block rounded w-full bg-zinc-50 placeholder-zinc-300 dark:bg-white/[0.03] dark:placeholder-zinc-700 border-none ring-1 focus:ring-2 ring-zinc-200 dark:ring-zinc-800 focus:ring-primary hdr:focus:ring-primary-hdr focus:dark:ring-primary hdr:focus:dark:ring-primary-hdr focus:formkit-invalid:ring-red-400 focus:dark:formkit-invalid:ring-red-400" name="email" id="input_7"><!--]--><!--[--><!----><!--]--></div><!--]--></div><!--]--><!----><!--[--><!----><!--]--></div><!--]--><!--]--></div><div class="col-span-2"><!--[--><!--[--><div class="formkit-outer not-prose space-y-1 formkit-disabled:opacity-50" data-type="textarea"><!--[--><div class="formkit-wrapper"><!--[--><label for="input_8" class="formkit-label block mb-2 font-medium text-sm text-zinc-700 dark:text-zinc-300">Your message</label><!--]--><!--[--><div class="formkit-inner mb-2 p-px"><!--[--><!----><!--]--><!--[--><textarea placeholder="Start writing here" rows="5" class="formkit-input block rounded w-full bg-zinc-50 placeholder-zinc-300 dark:bg-white/[0.03] dark:placeholder-zinc-700 border-none ring-1 focus:ring-2 ring-zinc-200 dark:ring-zinc-800 focus:ring-primary hdr:focus:ring-primary-hdr focus:dark:ring-primary hdr:focus:dark:ring-primary-hdr focus:formkit-invalid:ring-red-400 focus:dark:formkit-invalid:ring-red-400 h-full" name="message" id="input_8"></textarea><!--]--><!--[--><!----><!--]--></div><!--]--></div><!--]--><!----><!--[--><!----><!--]--></div><!--]--><!--]--></div><div class="col-span-2"><!--[--><!--[--><div class="formkit-outer space-y-2" data-type="submit"><!--[--><!----><!--]--><!--[--><div class="formkit-wrapper w-full"><!--[--><button type="submit" class="formkit-input w-full bg-primary hdr:bg-primary-hdr hover:bg-primary/90 text-white text-sm font-medium py-3 px-5 rounded" name="submit_4" id="input_9"><!--[--><!----><!--]-->Send message<!--[--><!----><!--]--></button><!--]--></div><!--]--><!----></div><!--]--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--></form><!--]--><!--]--><!----><!--]--></div></div><div class="clear-both"></div><div class="print:hidden grid md:grid-cols-2 gap-4 mt-5 lg:mt-12"><div></div><a class="block bg-zinc-50 hover:bg-zinc-100 dark:bg-white/[0.03] hover:dark:bg-zinc-800 px-4 pt-3 pb-2 roun
27ded no-underline group text-right" href="/tappable"><div class="text-xs text-zinc-500 font-normal font-mono"><!----><!--[-->Next<!--]--></div><div class="group-hover:text-primary hdr:group-hover:text-primary-hdr text-sm mt-1"><span class="font-normal text-zinc-500">Projects / </span>Tappable</div></a></div><!--]--></div><!--]--></article><!--]--></main></div></div></div><div class="flex-grow"></div></div></div>
28    
28<script>__VP_HASH_MAP__ = JSON.parse("{\"blloon.md\":\"51d30c53\",\"boost.md\":\"0136dc9b\",\"contact.md\":\"afc6ed90\",\"cv.md\":\"d63803a3\",\"index.md\":\"3a42f0c5\",\"overview.md\":\"deb37715\",\"red-bull-tv.md\":\"f16531f7\",\"success.md\":\"c9e1a4fa\",\"tappable.md\":\"b223b7b7\",\"thoughts_cloudflare-tv.md\":\"d67d834a\",\"thoughts_green-computing.md\":\"0fbf89a1\",\"thoughts_mpesa.md\":\"1499b859\",\"watch.md\":\"2378343b\"}")</script>
28
29    
29<script type="module" async src="/assets/app.a1ee5859.js"></script>
29
30    
31  
31<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4bc70e2c01a94c73b74392e4234840661791215815920" integrity="sha512-L0ha0OXavK/8okipN9F8BtP84dg9DUhPERbBXzwI6dgTA55d2+yweo3pn5CSFYs45/r8md2+xvUPtTdvTNRfjA==" data-cf-beacon='{"version":"2024.11.0","token":"2a7ddd11fe0b46ae8ddb057af0672030","r":1,"spa":2}' crossorigin="anonymous"></script>
31
32</body>
33</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.