myWebsite

Built with Hugo and a modified version of the risotto theme.
Log | Files | Refs

index.html (7160B)


      1 <!DOCTYPE html>
      2 <html lang="en">
      3 
      4     <head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><title>We Need More Apps Based on TXT Formats &ndash; Fedor_Vinogradov</title>
      5 <meta name="description" content="I prefer matrix over anything.">
      6 
      7 <meta name="viewport" content="width=device-width, initial-scale=1">
      8 <meta charset="UTF-8"/>
      9 
     10 
     11 
     12 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.6.0/css/all.min.css" integrity="sha512-Kc323vGBEqzTmouAECnVceyQqyqdsSiqLQISBL29aUW4U/M7pSPA/gEUZQqv1cwx4OnYxTxve5UMg5GT6L4JJg==" crossorigin="anonymous" referrerpolicy="no-referrer" />
     13 
     14 
     15 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/academicons/1.9.4/css/academicons.min.css" integrity="sha512-IW0nhlW5MgNydsXJO40En2EoCkTTjZhI3yuODrZIc8cQ4h1XcF53PsqDHa09NqnkXuIe0Oiyyj171BqZFwISBw==" crossorigin="anonymous" referrerpolicy="no-referrer" />
     16 
     17 
     18 <link rel="stylesheet" href="http://localhost:1313/css/palettes/nord-dark.css">
     19 <link rel="stylesheet" href="http://localhost:1313/css/risotto.css">
     20 <link rel="stylesheet" href="http://localhost:1313/css/custom.css">
     21 
     22 
     23 
     24 
     25 
     26 
     27 
     28 
     29 
     30 
     31 </head>
     32 
     33     <body>
     34         <div class="page">
     35 
     36             <header class="page__header"><nav class="page__nav main-nav">
     37     <ul>
     38       <li class="nomarker"><h1 class="page__logo"><a href="http://localhost:1313/" class="page__logo-inner">Fedor_Vinogradov</a></h1></li>
     39     
     40     
     41     <li class="main-nav__item"><a class="nav-main-item" href="http://localhost:1313/projects/" title="">Projects</a></li>
     42     
     43     <li class="main-nav__item"><a class="nav-main-item" href="http://localhost:1313/posts/" title="">Posts</a></li>
     44     
     45     </ul>
     46 </nav>
     47 
     48 </header>
     49 
     50             <section class="page__body">
     51     <header class="content__header">
     52         <h1>We Need More Apps Based on TXT Formats</h1>
     53     </header>
     54     <div class="content__body">
     55         <p>A few weeks ago, I decided to make a synced calendar system to organise my events and tasks. My main requirement is to make sure that the app on my phone, laptop and tablet are open sour  ce and allow to share the same tasks synced together. This should quite a simple task no? Aft  er all, calendars are a very common way to store your tasks. I soon discovered the ics format  , which I found good enough for my usecase. But&hellip; how do you sync it?</p>
     56 <h2 id="what-are-they">What are They</h2>
     57 <p>Designed to be used with GNU utils, txt formats present a truly universal way to manage your reminders and tasks. I&rsquo;m referring mainly to <a href="https://github.com/todotxt/todo.txt">todo.txt</a> since its the most popular one out there. Bellow is an official diagram that shows the way the format works but I would still recommend to quickly read the documentation in order to grasp it fully.</p>
     58 <p><strong>todo.txt:</strong></p>
     59 <p><img src="/images/todoTxtFormat.png" alt="todo.txt"></p>
     60 <h2 id="why-use-them">Why Use Them</h2>
     61 <p>These text formats provide a simple yet powerful storage backend for productivity apps. Let me explain why:</p>
     62 <p><strong>1. Extreme portability:</strong> everything is in a single file. You can sync this file between devices and then parse them any way you want.</p>
     63 <p><strong>2. Completely open format:</strong> its a single txt file, I don&rsquo;t think more explanation is needed.</p>
     64 <p><strong>3. Virtually infinite extensibility:</strong> todo.txt allows for &ldquo;special keyvalue tags&rdquo; which can be represent any possible value related to the todo task, for example a due date, time or even a timer. In the image above, you can see one created for the due date (<code>due:2016-05-30</code>) but it can be absolutely anything you want. This allows the format to have an unlimited amount of ways you can organize and save your todos.</p>
     65 <h2 id="txt-formats-are-perfect-storage-backends-for-productivity-applications">Txt Formats Are Perfect Storage Backends For Productivity Applications</h2>
     66 <p>They are not designed or intended to be used as a backend, but due to their simplicity, it can be easily implemented.</p>
     67 <p>There are a number of apps that already do it, personally I use <a href="https://github.com/ransome1/sleek">sleek</a> and <a href="https://github.com/tmaegel/ntodotxt">ntodotxt</a>, which both do exactly what im describing in this post but there is an enormous market gab for apps like this.</p>
     68 <p>The best part is that <strong>any feature</strong> can be implemented and not ruin the experience for any other app using the same file. You can make any sort of keyvalue tag, link it to a functionality, and then have it completely ignored by other apps, therefore not breaking them.</p>
     69 <p>Sleek has a pomodoro timer as one of the easy to set options: <code>pm:15</code></p>
     70 <p><img src="/images/sleekTodoTaskExample.png" alt="example of a sleek todo task"></p>
     71 <p>Ntodotxt still shows the tag, but doesn&rsquo;t display it in the same nice way:</p>
     72 <p><img src="/images/ntodoTxtTaskExample.png" alt="example of a ntodotxt todo task"></p>
     73 <h2 id="conclusion">Conclusion</h2>
     74 <p>Stop making and using bloated proprietary todo apps, make them transparent, flexible and shareable.</p>
     75 
     76     </div>
     77     <footer class="content__footer"></footer>
     78 
     79             </section>
     80 
     81             <section class="page__aside">
     82                 <div class="aside__about">
     83 <div class="aside__about">
     84     
     85     
     86 <h1 class="about__title">My Socials</h1>
     87 <p class="about__description">I prefer matrix over anything.</p>
     88 </div>
     89 
     90 
     91 <ul class="aside__social-links">
     92     
     93     <li>
     94         <a href="" rel="me" aria-label="SourceHut" title="SourceHut"><i class="fa-regular fa-circle" aria-hidden="true"></i></a>&nbsp;
     95     </li>
     96     
     97     <li>
     98         <a href="https://matrix.to/#/@fedorvin:matrix.org" rel="me" aria-label="Matrix" title="Matrix"><i class="fa-regular fa-comment" aria-hidden="true"></i></a>&nbsp;
     99     </li>
    100     
    101     <li>
    102         <a href="/index.xml" rel="me" aria-label="RSS" title="RSS"><i class="fa-solid fa-rss" aria-hidden="true"></i></a>&nbsp;
    103     </li>
    104     
    105     <li>
    106         <a href="mailto:vino-f@pm.me" rel="me" aria-label="Email" title="Email"><i class="fa-regular fa-envelope" aria-hidden="true"></i></a>&nbsp;
    107     </li>
    108     
    109     <li>
    110         <a href="https://linkedin.com/in/fedor-vinogradov-b4454219a" rel="me" aria-label="LinkedIn" title="LinkedIn"><i class="fa-brands fa-linkedin-in" aria-hidden="true"></i></a>&nbsp;
    111     </li>
    112     
    113 </ul>
    114 <hr>
    115                 <div class="aside__content">
    116     <p>A guide for how i make all of my documents</p>
    117     
    118         <p>
    119             
    120             2025-04-07
    121         </p>
    122     
    123 
    124     
    125 
    126 		    
    127 		    <nav id="TableOfContents">
    128   <ul>
    129     <li><a href="#what-are-they">What are They</a></li>
    130     <li><a href="#why-use-them">Why Use Them</a></li>
    131     <li><a href="#txt-formats-are-perfect-storage-backends-for-productivity-applications">Txt Formats Are Perfect Storage Backends For Productivity Applications</a></li>
    132     <li><a href="#conclusion">Conclusion</a></li>
    133   </ul>
    134 </nav>
    135 		    
    136             </section>
    137 
    138             <footer class="page__footer">
    139 <p class="copyright"></p>
    140 </footer>
    141 
    142         </div>
    143     </body>
    144 
    145 </html>