PageSourceSearch

https://hyfen.net/memex

html hyfen.net collected 2026-10-03 19:18:48 UTC 15,462 bytes, 15 lines download raw bytes

1<!DOCTYPE html><html lang="en" class="text-black bg-white dark:text-white dark:bg-black __variable_ac79ff __variable_8a4d12"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/ec1a1eae803b668e-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/f980ec13b5b5e554.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/ac8a0241b111154e.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-c177cbd19639d275.js"/>
1<script src="/_next/static/chunks/e980e293-caf1db4c24b578bb.js" async=""></script>
1<script src="/_next/static/chunks/773-001ce1bfb34ecf84.js" async=""></script>
1<script src="/_next/static/chunks/main-app-58849a2fd95c7c1c.js" async=""></script>
1<script src="/_next/static/chunks/app/page-b42f09a0a6da7e51.js" async=""></script>
1<script src="/_next/static/chunks/app/layout-51874f2b5f934a0d.js" async=""></script>
1<script src="/_next/static/chunks/app/memex/page-64845af33aa6f20b.js" async=""></script>
1<link rel="preload" href="https://www.googletagmanager.com/gtag/js?id=G-8K0M1YJ8FQ" as="script"/><meta name="next-size-adjust" content=""/><title>Andrew Louis</title><meta name="description" content="Home page of Andrew Louis"/><meta name="robots" content="index, follow"/><meta name="googlebot" content="index, follow, max-video-preview:-1, max-image-preview:large, max-snippet:-1"/><meta property="og:title" content="Andrew Louis"/><meta property="og:description" content="Home page of Andrew Louis"/><meta property="og:url" content="https://hyfen.net"/><meta property="og:site_name" content="My Portfolio"/><meta property="og:locale" content="en_US"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary"/><meta name="twitter:title" content="Andrew Louis"/><meta name="twitter:description" content="Home page of Andrew Louis"/>
1<script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script>
1</head><body class="antialiased max-w-xl mx-4 mt-8 lg:mx-auto"><main class="flex-auto min-w-0 mt-6 flex flex-col px-2 md:px-0"><aside class="-ml-[8px] mb-16 tracking-tight"><div class="lg:sticky lg:top-20"><nav class="flex flex-row items-start relative px-0 pb-0 fade md:overflow-auto scroll-pr-6 md:relative" id="nav"><div class="flex flex-row space-x-0 pr-10"><a class="transition-all hover:text-neutral-800 dark:hover:text-neutral-200 flex align-middle relative py-1 px-2 m-1" href="/">home</a><a class="transition-all hover:text-neutral-800 dark:hover:text-neutral-200 flex align-middle relative py-1 px-2 m-1" href="/memex">memex</a></div></nav></div></aside><h1>Building a Memex</h1>
2<p>In 1945, the <a href="https://www.theatlantic.com/magazine/archive/1945/07/as-we-may-think/303881/">Memex</a> was proposed as the ultimate personal library for a user’s books, correspondence, and records. In addition to just storing this data, users could navigate, organize, link, and share it with others.</p>
3<p>Unfortunately, zero were ever built but the Memex had a direct influence on the first interactive computers and the development of hypertext and the internet. In an age when computers were room-sized analog devices for simulating missile trajectories or calculating payroll, this idea presented an alternative vision of what computers <em>should</em> be able to do.</p>
4<p>Though computers are more powerful and ubiquitous than ever, our digital histories are often inaccessible, fragmented, or locked behind corporate platforms. As a long-time journaller, note-taker, and digital packrat, the idea of the Memex resonated with me. Inspired by this seventy-year-old vision, I&#x27;m now attempting to build an app for making my personal history accessible for search and introspection.</p>
5<p>Here&#x27;s a conference talk that goes over more details:</p>
6<div><iframe src="https://www.youtube-nocookie.com/embed/DFWxvQn4cf8" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"></iframe></div>
7<h2>What I&#x27;ve built so far:</h2>
8<ul>
9<li><strong>Real-time importers</strong> for all the digital history I generate (email, browser history, photos, podcast listening, ebook reading, etc). Each of these activity streams gets processed into a graph-like schema, accessible through a unified API.</li>
10<li>An interface for <strong>searching, filtering, and analyzing</strong> all this personal data.</li>
11<li>A flexible authoring tool for <strong>composing, organizing, and annotating</strong> information.</li>
12</ul>
13<h2>Updates</h2>
14<p>I&#x27;m working towards publishing more details but if you’re interested in learning more now, I&#x27;d love to chat by <a href="/cdn-cgi/l/email-protection#43222d27312634032b3a25262d6d2d2637">email</a> or you can sign up for <a href="https://buttondown.com/hyfen">the development newsletter</a>.</p><footer class="mb-16"><ul class="font-sm mt-8 flex flex-col space-x-0 space-y-2 text-neutral-600 md:flex-row md:space-x-4 md:space-y-0 dark:text-neutral-300"><li><a class="flex items-center transition-all hover:text-neutral-800 dark:hover:text-neutral-100" target="_blank" href="https://twiter.com/hyfen"><svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2.07102 11.3494L0.963068 10.2415L9.2017 1.98864H2.83807L2.85227 0.454545H11.8438V9.46023H10.2955L10.3097 3.09659L2.07102 11.3494Z" fill="currentColor"></path></svg><p class="ml-2 h-7">twitter</p></a></li><li><a class="flex items-center transition-all hover:text-neutral-800 dark:hover:text-neutral-100" target="_blank" href="https://instagram.com/hyfen"><svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2.07102 11.3494L0.963068 10.2415L9.2017 1.98864H2.83807L2.85227 0.454545H11.8438V9.46023H10.2955L10.3097 3.09659L2.07102 11.3494Z" fill="currentColor"></path></svg><p class="ml-2 h-7">instagram</p></a></li><li><a class="flex items-center transition-all hover:text-neutral-800 dark:hover:text-neutral-100" target="_blank" href="https://github.com/hyfen"><svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2.07102 11.3494L0.963068 10.2415L9.2017 1.98864H2.83807L2.85227 0.454545H11.8438V9.46023H10.2955L10.3097 3.09659L2.07102 11.3494Z" fill="currentColor"></path></svg><p class="ml-2 h-7">github</p></a></li></ul>
14<p class="mt-8 text-neutral-600 dark:text-neutral-300">© <!-- -->2025<!-- --> Andrew Louis</p></footer><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><!--/$--></main>
vendor: 108 bytes, line 14
14<script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
14<script src="/_next/static/chunks/webpack-c177cbd19639d275.js" async=""></script>
14<script>(self.__next_f=self.__next_f||[]).push([0])</script>
14<script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[8305,[\"974\",\"static/chunks/app/page-b42f09a0a6da7e51.js\"],\"\"]\n3:I[768,[],\"\"]\n4:I[3542,[],\"\"]\n5:I[5667,[\"177\",\"static/chunks/app/layout-51874f2b5f934a0d.js\"],\"Analytics\"]\n6:I[812,[\"177\",\"static/chunks/app/layout-51874f2b5f934a0d.js\"],\"SpeedInsights\"]\n7:I[6727,[\"177\",\"static/chunks/app/layout-51874f2b5f934a0d.js\"],\"GoogleAnalytics\"]\n8:I[8029,[],\"ClientPageRoot\"]\n9:I[919,[\"857\",\"static/chunks/app/memex/page-64845af33aa6f20b.js\"],\"default\"]\nc:I[9361,[],\"OutletBoundary\"]\nf:I[9361,[],\"ViewportBoundary\"]\n11:I[9361,[],\"MetadataBoundary\"]\n13:I[4623,[],\"\"]\n:HL[\"/_next/static/media/ec1a1eae803b668e-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/f980ec13b5b5e554.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/ac8a0241b111154e.css\",\"style\"]\n"])</script>
14<script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"_vMitaEvUlr1H3OJg5h2d\",\"p\":\"\",\"c\":[\"\",\"memex\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"memex\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/ac8a0241b111154e.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"text-black bg-white dark:text-white dark:bg-black __variable_ac79ff __variable_8a4d12\",\"children\":[[\"$\",\"body\",null,{\"className\":\"antialiased max-w-xl mx-4 mt-8 lg:mx-auto\",\"children\":[\"$\",\"main\",null,{\"className\":\"flex-auto min-w-0 mt-6 flex flex-col px-2 md:px-0\",\"children\":[[\"$\",\"aside\",null,{\"className\":\"-ml-[8px] mb-16 tracking-tight\",\"children\":[\"$\",\"div\",null,{\"className\":\"lg:sticky lg:top-20\",\"children\":[\"$\",\"nav\",null,{\"className\":\"flex flex-row items-start relative px-0 pb-0 fade md:overflow-auto scroll-pr-6 md:relative\",\"id\":\"nav\",\"children\":[\"$\",\"div\",null,{\"className\":\"flex flex-row space-x-0 pr-10\",\"children\":[[\"$\",\"$L2\",\"/\",{\"href\":\"/\",\"className\":\"transition-all hover:text-neutral-800 dark:hover:text-neutral-200 flex align-middle relative py-1 px-2 m-1\",\"children\":\"home\"}],[\"$\",\"$L2\",\"/memex\",{\"href\":\"/memex\",\"className\":\"transition-all hover:text-neutral-800 dark:hover:text-neutral-200 flex align-middle relative py-1 px-2 m-1\",\"children\":\"memex\"}]]}]}]}]}],[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"section\",null,{\"children\":[[\"$\",\"h1\",null,{\"className\":\"mb-8 text-2xl font-semibold tracking-tighter\",\"children\":\"404 - Page Not Found\"}],[\"$\",\"p\",null,{\"className\":\"mb-4\",\"children\":\"The page you are looking for does not exist.\"}]]}],\"$undefined\",[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}],[\"$\",\"footer\",null,{\"className\":\"mb-16\",\"children\":[[\"$\",\"ul\",null,{\"className\":\"font-sm mt-8 flex flex-col space-x-0 space-y-2 text-neutral-600 md:flex-row md:space-x-4 md:space-y-0 dark:text-neutral-300\",\"children\":[[\"$\",\"li\",null,{\"children\":[\"$\",\"a\",null,{\"className\":\"flex items-center transition-all hover:text-neutral-800 dark:hover:text-neutral-100\",\"target\":\"_blank\",\"href\":\"https://twiter.com/hyfen\",\"children\":[[\"$\",\"svg\",null,{\"width\":\"12\",\"height\":\"12\",\"viewBox\":\"0 0 12 12\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"children\":[\"$\",\"path\",null,{\"d\":\"M2.07102 11.3494L0.963068 10.2415L9.2017 1.98864H2.83807L2.85227 0.454545H11.8438V9.46023H10.2955L10.3097 3.09659L2.07102 11.3494Z\",\"fill\":\"currentColor\"}]}],[\"$\",\"p\",null,{\"className\":\"ml-2 h-7\",\"children\":\"twitter\"}]]}]}],[\"$\",\"li\",null,{\"children\":[\"$\",\"a\",null,{\"className\":\"flex items-center transition-all hover:text-neutral-800 dark:hover:text-neutral-100\",\"target\":\"_blank\",\"href\":\"https://instagram.com/hyfen\",\"children\":[[\"$\",\"svg\",null,{\"width\":\"12\",\"height\":\"12\",\"viewBox\":\"0 0 12 12\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"children\":[\"$\",\"path\",null,{\"d\":\"M2.07102 11.3494L0.963068 10.2415L9.2017 1.98864H2.83807L2.85227 0.454545H11.8438V9.46023H10.2955L10.3097 3.09659L2.07102 11.3494Z\",\"fill\":\"currentColor\"}]}],[\"$\",\"p\",null,{\"className\":\"ml-2 h-7\",\"children\":\"instagram\"}]]}]}],[\"$\",\"li\",null,{\"children\":[\"$\",\"a\",null,{\"className\":\"flex items-center transition-all hover:text-neutral-800 dark:hover:text-neutral-100\",\"target\":\"_blank\",\"href\":\"https://github.com/hyfen\",\"children\":[[\"$\",\"svg\",null,{\"width\":\"12\",\"height\":\"12\",\"viewBox\":\"0 0 12 12\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"children\":[\"$\",\"path\",null,{\"d\":\"M2.07102 11.3494L0.963068 10.2415L9.2017 1.98864H2.83807L2.85227 0.454545H11.8438V9.46023H10.2955L10.3097 3.09659L2.07102 11.3494Z\",\"fill\":\"currentColor\"}]}],[\"$\",\"p\",null,{\"className\":\"ml-2 h-7\",\"children\":\"github\"}]]}]}]]}
14],[\"$\",\"p\",null,{\"className\":\"mt-8 text-neutral-600 dark:text-neutral-300\",\"children\":[\"© \",2025,\" Andrew Louis\"]}]]}],[\"$\",\"$L5\",null,{}],[\"$\",\"$L6\",null,{}]]}]}],[\"$\",\"$L7\",null,{\"gaId\":\"G-8K0M1YJ8FQ\"}]]}]]}],{\"children\":[\"memex\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L8\",null,{\"Component\":\"$9\",\"searchParams\":{},\"params\":{},\"promises\":[\"$@a\",\"$@b\"]}],\"$undefined\",null,[\"$\",\"$Lc\",null,{\"children\":[\"$Ld\",\"$Le\",null]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$1\",\"jU6Y27104Q0LsTRJg1dLe\",{\"children\":[[\"$\",\"$Lf\",null,{\"children\":\"$L10\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],[\"$\",\"$L11\",null,{\"children\":\"$L12\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$13\",\"$undefined\"],\"s\":false,\"S\":true}\n"])</script>
14<script>self.__next_f.push([1,"a:{}\nb:{}\n"])</script>
14<script>self.__next_f.push([1,"10:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\nd:null\n"])</script>
14<script>self.__next_f.push([1,"e:null\n12:[[\"$\",\"title\",\"0\",{\"children\":\"Andrew Louis\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Home page of Andrew Louis\"}],[\"$\",\"meta\",\"2\",{\"name\":\"robots\",\"content\":\"index, follow\"}],[\"$\",\"meta\",\"3\",{\"name\":\"googlebot\",\"content\":\"index, follow, max-video-preview:-1, max-image-preview:large, max-snippet:-1\"}],[\"$\",\"meta\",\"4\",{\"property\":\"og:title\",\"content\":\"Andrew Louis\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:description\",\"content\":\"Home page of Andrew Louis\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:url\",\"content\":\"https://hyfen.net\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:site_name\",\"content\":\"My Portfolio\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:locale\",\"content\":\"en_US\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"10\",{\"name\":\"twitter:card\",\"content\":\"summary\"}],[\"$\",\"meta\",\"11\",{\"name\":\"twitter:title\",\"content\":\"Andrew Louis\"}],[\"$\",\"meta\",\"12\",{\"name\":\"twitter:description\",\"content\":\"Home page of Andrew Louis\"}]]\n"])</script>
14<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"3b168e5c30394ca0a86fe5e571a626a0","r":1,"spa":2}' crossorigin="anonymous"></script>
14
15</body></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.