1<!doctype html> 2<html lang="en"> 3<head> 4 <meta charset="utf-8" /> 5 <meta name="viewport" content="width=device-width, initial-scale=1" /> 6 <title>Blog â Ulix</title> 7 <meta name="description" content="Signals from Ulix â updates on new apps, new features, and the occasional idea on tools that serve." /> 8 <link rel="canonical" href="https://ulix.app/blog.html" /> 9 <meta name="robots" content="noindex, follow" /> 10 <meta name="theme-color" content="#0F0E0C" /> 11 12 <meta property="og:type" content="website" /> 13 <meta property="og:site_name" content="Ulix" /> 14 <meta property="og:title" content="Blog â Ulix" /> 15 <meta property="og:description" content="Signals from Ulix â updates on new apps, new features, and the occasional idea." /> 16 <meta property="og:url" content="https://ulix.app/blog.html" /> 17 <meta property="og:image" content="https://ulix.app/icons/favicon.png" /> 18 <meta name="twitter:card" content="summary" /> 19 <meta name="twitter:title" content="Blog â Ulix" /> 20 <meta name="twitter:description" content="Signals from Ulix â updates on new apps, new features, and the occasional idea." /> 21 <meta name="twitter:image" content="https://ulix.app/icons/favicon.png" /> 22 23 <link rel="icon" href="/icons/favicon.ico" sizes="any" /> 24 <link rel="icon" type="image/png" sizes="32x32" href="/icons/favicon-32x32.png" /> 25 <link rel="icon" type="image/png" sizes="16x16" href="/icons/favicon-16x16.png" /> 26 <link rel="apple-touch-icon" sizes="180x180" href="/icons/apple-touch-icon.png" /> 27 <link rel="stylesheet" href="./assets/ulix.css" /> 28 29 <!-- Fonts: Geist (self-hosted) + Newsreader (display serif). Matches the homepage. --> 30 <link rel="preload" as="font" type="font/woff2" href="./assets/fonts/geist-latin.woff2" crossorigin /> 31 <link rel="preconnect" href="https://fonts.googleapis.com" /> 32 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin /> 33 <link href="https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,200;0,6..72,300;0,6..72,400;0,6..72,500;0,6..72,600;1,6..72,300;1,6..72,400;1,6..72,500&display=swap" rel="stylesheet" /> 34 <!-- Shared warm-dark editorial design system (same as the homepage) --> 35 <link rel="stylesheet" href="./assets/home.css" /> 36</head> 37 38<body class="home-page"> 39 <a href="#main" class="skip-link">Skip to content</a> 40 41 <!-- Header (shared site chrome) --> 42 <header class="site-header"> 43 <div class="container container--wide site-header__inner"> 44 <a href="./index.html" class="site-brand"> 45 <img src="./icons/favicon.png" alt="" class="site-brand__logo" width="64" height="64" /> 46 <span class="site-brand__name">ULIX</span> 47 </a> 48 <nav class="site-nav" aria-label="Primary"> 49 <a href="./index.html" class="site-nav__link">Home</a> 50 <a href="./apps.html" class="site-nav__link">Apps</a> 51 <a href="./blog.html" class="site-nav__link" aria-current="page">Blog</a> 52 <a href="./about.html" class="site-nav__link">About</a> 53 <a href="./contact.html" class="site-nav__link">Contact</a> 54 </nav> 55 <div class="site-header__actions"> 56 <button id="u-menu-btn" class="menu-toggle" aria-label="Open menu" aria-expanded="false" aria-controls="u-mobile"> 57 <svg aria-hidden="true" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"> 58 <line x1="4" y1="7" x2="20" y2="7"/> 59 <line x1="4" y1="12" x2="20" y2="12"/> 60 <line x1="4" y1="17" x2="20" y2="17"/> 61 </svg> 62 </button> 63 <a href="./apps.html" class="btn btn--primary btn--header">Browse all apps â</a> 64 </div> 65 </div> 66 </header> 67 68 <!-- Mobile drawer --> 69 <div id="u-mobile" class="drawer" role="dialog" aria-modal="true" aria-label="Menu" hidden> 70 <div class="drawer__backdrop" data-close></div> 71 <div class="drawer__panel"> 72 <div class="drawer__header"> 73 <span class="drawer__title">Menu</span> 74 <button class="drawer__close" aria-label="Close menu" data-close> 75 <svg aria-hidden="true" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 76 <path d="M6 18L18 6M6 6l12 12"/> 77 </svg> 78 </button> 79 </div> 80 <ul class="drawer__list"> 81 <li><a class="drawer__link" href="./index.html" data-close>Home</a></li> 82 <li><a class="drawer__link" href="./apps.html" data-close>Apps</a></li> 83 <li><a class="drawer__link" href="./blog.html" data-close>Blog</a></li> 84 <li><a class="drawer__link" href="./about.html" data-close>About</a></li> 85 <li><a class="drawer__link" href="./contact.html" data-close>Contact</a></li> 86 </ul> 87 </div> 88 </div> 89 90 <main id="main"> 91 <div class="doc"> 92 <div class="doc-hero"> 93 <h1 class="doc-hero__title">Signals from Ulix</h1> 94 <p class="doc-hero__lede">New apps, new updates, and the occasional interesting idea for those who believe tools should serve.</p> 95 </div> 96 <div class="prose-card"> 97 <h2>Coming Soon</h2> 98 <p>Sign up for our email list below to receive notifications of new posts.</p> 99 </div> 100 </div> 101 </main> 102 103 <!-- Footer (shared site chrome) --> 104 <footer class="site-footer"> 105 <div class="container"> 106 <p class="footer-credo">Find the <b>book</b> <span class="sep">·</span> Save the <b>passage</b> <span class="sep">·</span> Read the <b>classic</b> <span class="sep">·</span> Keep the <b>record</b> <span class="sep">·</span> Own the <b>data</b></p> 107 <div class="site-footer__grid"> 108 <div class="site-footer__brand"> 109 <img src="./icons/ulixwordmarkclear.png" alt="Ulix â Precision tools for modern odysseys" class="footer-wordmark" width="1754" height="717" /> 110 </div> 111 <div class="site-footer__links"> 112 <a href="./apps.html">Apps</a> 113 <a href="./knowledge/">Knowledge</a> 114 <a href="./blog.html">Blog</a> 115 <a href="./support.html">Support</a> 116 <a href="./about.html">About</a> 117 <a href="./contact.html">Contact</a> 118 <a href="./terms.html">Terms</a> 119 <a href="./privacy.html">Privacy</a> 120 </div> 121 <div>
122 <form action="https://buttondown.com/api/emails/embed-subscribe/ulix" method="post" target="bd-subscribe" class="newsletter" aria-label="Email signup"> 123 <label for="nl-email" class="newsletter__label">Get product updates</label> 124 <div class="newsletter__row"> 125 <input id="nl-email" class="newsletter__input" type="email" name="email" placeholder="[email protected]" /> 126 <button class="btn btn--secondary">Subscribe</button> 127 </div> 128 </form> 129 <div class="site-footer__copyright">© 2026 Ulix LLC. All rights reserved.</div> 130 </div> 131 </div> 132 </div> 133 </footer> 134 135
135<script src="./assets/ulix.js" defer></script>
135 136</body> 137</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.