<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Great Little Software</title>
    <description>Stories, notes and field reports about indie software.</description>
    <link>https://greatlittle.software/blog/</link>
    <lastBuildDate>08 May 2026 13:37:07 +0000</lastBuildDate>
    <atom:link href="https://greatlittle.software/feed.xml" rel="self" type="application/rss+xml"/>
    <image>
      <url>https://greatlittle.software/assets/icon.png</url>
      <title>Great Little Software</title>
      <link>https://greatlittle.software/blog/</link>
    </image>
    <item>
      <title>Papra: Your Solution to Document Chaos</title>
      <link>https://greatlittle.software/blog/papra-open-source-document-management-platform/</link>
      <guid>https://greatlittle.software/blog/papra-open-source-document-management-platform/</guid>
      <pubDate>03 May 2026 12:19:03 +0000</pubDate>
      <description><![CDATA[<img src="https://greatlittle.software/blog/papra-open-source-document-management-platform/papra.webp" alt="Papra screenshot showing latest imported documents such as &quot;Wife christmas gift recipe&quot; and payslips as well as &quot;All documents&quot; section with insurance, mortgage and high school diploma"/><blockquote>
<p>To me, the main non-negotiable point is the ethical aspect of the project. From having everything opensource, to being selfhosting friendly and privacy-focused, no dark patterns, no shady stuff, no monetization of user data, no bullshit. It’s really important for me to build a product that I can be proud of, that aligns with my values, and that make a positive impact, even if it means slower growth or less profit. I’d rather build a smaller sustainable product that treats people well than a bigger one that doesn’t.
– <cite>Corentin Thomasset</cite></p>
</blockquote>
<p>Papra came up in a research that AI agent did for me. It was a very disappointing research, small indie apps built on strong ethical foundation are very hard to find. I think partly because those who make them care more about the apps than the marketing, but mostly because of the sheer volume of yet-another-too-good-to-be-true AI SaaS platform. So when I stumbled upon Papra I got very excited to see the one that made it through the noise!</p>
<p>I was a bit nervous reaching out to Corentin Thomasset, but he turned out a wholesome human being and generously shared his and Papra’s story, that I am so very eager to retell you.</p>
<p>“I’ve started Papra on January 2025 as a side project while still being employed full time” - he shared in his email, “I needed an archiving platform for myself, and I found existing solutions to be either too complex, or not user-friendly enough to be usable by non-technical users (family). So I decided to build something that fits my needs, and hopefully fits others’ too.”</p>
<p>I have a theory why many software projects start this way: I think there’s a lot of correlation between an artist and a software developer and if you think about it this way, you wouldn’t be suprised that a painter painted a sunset view from their backyard - that’s what was available at the time - anything goes, because we can’t resist the call of “what if it could be done better?” even if that would cost years of working after hours with no return, except for the sense of accomplishment.</p>
<p>Luckily, Papra gained traction and within 9 months Corentin was able to fully focus on the project.
Let me say it again, he was able to make revenue from an open-source, self-hostable, affordable project!</p>
<h2>The Right, The Hard Way</h2>
<p>There is a reason why the most common business advice is to solve problems for big companies and charge them exorbitant amount of money: it’s easier and you only have to get a few customers to be able to cover your own salary. An even easier way is to raise money for your idea - you don’t even need to build anything, “just” convince investors that your promises are worth the risk.</p>
<p>It’s an art too, just not the style I personally aspire to. I think that business, just like any form of leadership, is about caring about the people you serve and placing their interests above the sheer profit.</p>
<p>And it was very obvious to me that Corentin shares the same values:
“As an open-source and self-hosting advocate, Papra is for me a way to empower people to take control of their own data instead of handing it over to corporations that monetize it. Document archives are deeply personal (tax returns, contracts, medical records, payslips, …) and I think people deserve tools that treat that seriously.”, as he put it - “And, to be honest, I also just love building software. Crafting a product from scratch, solving problems, and learning new things along the way. It’s a very rewarding experience for me, and I enjoy the process as much as the result.”</p>
<p>Guilty, I do too.</p>
<h2>One-man-band</h2>
<p>Building stuff is fun indeed. Corentin worked with a tech stack he liked and is deeply familiar and enjoys working with. This freedom to choose how, when and what to work on is the greatest benefit of solo development, but there’s the other side of the coin too.</p>
<p>As Corentin put it: “…being a solo founder, you have to wear many hats (every hats to be honest), from development, to design, to marketing, to support, to infrastructure, and more. Every discord ping, every issue, every “it doesn’t work” message, every PR, it’s all on you to handle, and it can be overwhelming at times. But the community around the project has been amazing and supportive, it’s motivating and makes it all worth it.“</p>
<p>Naturally, one would suggest to turn to the all-powerful-LLMs to balance the load out, but I think Corentin has a good point about it:
“As a said above, I really enjoy building software, writing code, finding solutions to problems, and crafting stuff with my bare hands, so AI has never had a significant role in Papra’s development. I don’t want the robots doing the fun part for me, or to lose my connection with the codebase.”</p>
<p>He mentioned the famous line by <a href="https://x.com/AuthorJMac/status/1773679197631701238">Joanna Maciejewska</a>: “I want AI to do my laundry and dishes so that I can do art and writing, not for AI to do my art and writing so that I can do laundry and dishes.”. Given that I’ve spent the last year trying to tackle this exact problem (never-ending laundry and dishes), I couldn’t agree more.</p>
<p>I’m not anti-AI and my impression is that neither is Corentin. He said that he genuinely tried to make it work, but got frustrated because correcting and re-prompting LLM often takes longer and yields worse results than doing it manually. He uses it for reviews and feedback - as a second pair of eyes and a “safety net, not as a builder”.</p>
<p>Unfortunately, not everyone shares this perspective and like many of open-source maintainers Papra and Corentin are plagued with vibe-coded low-quality contributions, from people, which took them few seconds to prompt and submit. “But on the other side, it takes a lot of time to review, correct, and give feedback on those PRs (feedback which often just gets forwarded back to their agent). It makes it hard not to get a bit sick of AI-generated code.” - he shared.</p>
<p>With great power, comes great responsibility, as Uncle Ben taught us.
We just have to hope the latter comes sooner rather than later.</p>
<h2>The recipe for success</h2>
<p>As of right now, Papra has 4.4K stars on GitHub, which I find very inspiring and see it as a testament to its maker’s abilities and expertise. I asked Corentin if he’d be willing to share his knowledge with us, other solo builders and solo founders, which he did and I believe it’s best that I share his answers verbatim:</p>
<p>“The reality is that my projects are not yet profitable enough for me to fully live off them. I have the chance to have some savings, and can collect some French unemployment benefits for a while. Plus my partner is working full time which is a huge safety net. So I have the huge privilege of being in a comfortable enough position to focus on Papra without the pressure of needing it to pay the mortgage next month, but I’m clear-eyed that this window won’t last forever. At some point, Papra needs to become profitable enough to sustain me, or I’ll go back to a more traditional job and keep building it on the side. That’s just the math.</p>
<p>As for tips and advice, I think the main one is to do this for the right reasons. Trying to build stuff just for the money is a recipe for burnout and disappointment, especially in the early stages when the project is not yet profitable. Building something you care about, that solves a problem you have, that aligns with your values, is what will keep you going through, and make the journey enjoyable regardless of the outcome.</p>
<p>As for marketing it’s indeed a challenge, especially for a solo builder with limited time and resources. It’s clearly not my strong suit, and I don’t have a magic formula for it. But I think being authentic, and engaging with the community in a genuine way is important. It goes with the “do stuff for the right reasons” advice, people can sense when a project is built with passion and care, and that can be a powerful marketing tool in itself. I’d love to grow the team eventually and bring in people with marketing or community-building skills, but for now it’s just me wearing all the hats and doing my best to get the word out while building the product.</p>
<p>In the end, I’d rather build something small that I’m proud of and that genuinely helps people than chase numbers I don’t care about. If Papra ends up being a sustainable one-person product that pays my bills and serves a community of users who care about their data, that’s a huge win. Anything beyond that is a bonus.</p>
<p>So if there’s one thing I’d say to other solo builders: don’t measure yourself against other products outcomes. A profitable, sustainable, one-person product that lets you keep doing work you care about is already a rare and valuable thing. That’s the bar I’m aiming for, and I think more builders should give themselves permission to aim there too.“</p>
<blockquote>
<p>What do you wish you’d done differently with the knowledge you have now?</p>
</blockquote>
<p>“I’d tell my past self to focus less on making things perfectly perfect from the start. I easily get caught up in the details and try to build the ideal solution, sometimes getting stuck on a problem for too long, or over-engineering things at the cost of shipping and getting feedback. There’s a balance between building something good enough to be useful and obsessing over making it perfect, and I’m still learning to find it. Hard habit to break, but I’m getting better at it.”</p>
<blockquote>
<p>What’s your wildest dream for the app?</p>
</blockquote>
<p>“I’d love to see Papra become the go-to reference for document archiving, empowering millions of people to take control of their own data, and maybe even inspiring companies to go full open-source and self-hosting along the way.
And beyond that: a thriving community of contributors and self-hosters around Papra, where the project belongs to more than just me, with an open governance model. The kind of open-source project that lives beyond its creator, one that will adapt and evolve with the needs of its users. That would be the long-term win.”</p>
<p>I encourage you to try Papra out at <a href="https://papra.app/">papra.app</a>.
It is a great little software.</p>
]]></description>
    </item>
    <item>
      <title>Psikat: a tracker-like DAW</title>
      <link>https://greatlittle.software/blog/psikat-tracker-like-daw/</link>
      <guid>https://greatlittle.software/blog/psikat-tracker-like-daw/</guid>
      <pubDate>24 Apr 2026 21:25:00 +0000</pubDate>
      <description><![CDATA[<img src="https://greatlittle.software/blog/psikat-tracker-like-daw/psikat_com.png" alt="Pixel art cat - logo of psikat, followed by &quot;Browser-based tracker-like sequencer DAW, v0.7.18-alpha, made by holoflash&quot; over the interface of psikat with prominent piano keyboard at the bottom"/><blockquote>
<p>…I’ve always known that I’ve been missing out and the modern day just lacks that special charm…
– <cite>Palace, “Back to ’85”</cite></p>
</blockquote>
<p>Ghostbusters were released in 1984, the first Back to the Future movie and Microsoft Windows - in 1985; and 1986 has brought us The Legend of Zelda and Castlevania. It was a different era, the one I too experienced only by watching the movies and playing games.</p>
<p>You might be wondering what do cats, 1980s and a musical sequencer have in common.
Well for starters, the song I quoted belongs to an artist known as Michael Palace,
the creator of psikat - the browser-based tracker-like sequencer- is holoflash
and both of them are the same person: Redas Jefisovas.</p>
<p>Why a successful musician decides to become a web developer is a story for another time, but it seems that neither of his passions ever fully took over because psikat has been born of them both.</p>
<h2>Why psikat?</h2>
<p>“Psi - as in the greek letter Ψ (psi); kat - as in cat, because I love cats” - said Redas when I asked.</p>
<p>For at least 15 years, before getting into programming, the main way he interacted with computers was using the mouse and a handful of keyboard shortcuts. Dragging around audio clips in Logic Pro, moving around vector points in Adobe Illustrator - all the interfaces he needed to interact with were built around the mouse.</p>
<p>When he made the transition to programming, he was suddenly forced to put both hands on the keyboard and learn how to actually type properly to become productive, and add a lot more keyboard shortcuts to his repertoire.</p>
<p>Time went on, he learned how to do almost everything on the computer without ever touching the mouse. “This meant I could finally be one of those cool cats who can get by with just a laptop, and I got rid of my whole desk setup with external monitors, mice and keyboards.” as he put it.</p>
<p>And once the carpal-tunnel-syndrome symptoms were gone, going back felt horrible. He discovered so called <em>music trackers</em>, that are in some cases completely keyboard based, with a look and a feel of a hex editor, but so very different from the software he used to create music up until now.</p>
<p>So he needed something in-between Fast Tracker 2:
<img src="https://upload.wikimedia.org/wikipedia/en/4/4b/FastTracker_2_screenshot.png" alt="“Dead Lock” by Elwood playing on FastTracker II“" /></p>
<p>And Logic Pro X he was used to:
<img src="https://upload.wikimedia.org/wikipedia/en/e/e2/Logic_Pro_X_screenshot.png" alt="“A screenshot of Logic Pro X running on macOS Mojave”" /></p>
<p>He couldn’t find one, so he built psikat and the rest is history!</p>
<h2>If only it’d be that easy</h2>
<p>Getting started, as Redas shared, wasn’t hard: the plan was to start with the basic tracker and then bridge the gap towards the DAW (Digital Audio Workstation). The first goal was to build a “tracker that kinda works like FastTracker 2 and can playback .xm format files”. This format has been around long enough to be fully documented and iterated on, so it was trivial to reimplement. Especially with the help of LLM’s.</p>
<p>A downside of an established format is that it usually comes with a certain legacy. And thus he felt that if he would label psikat as a tracker, he’d have to jump through to a lot of hoops to satisfy everyone that’s looking for a “tracker”.</p>
<p>As a result he decided to narrow his focus or in his own words: “That’s when I changed the description to tracker-like, deleted all of the code and started from scratch. I would have to make my own decisions to make this thing my own and I can’t be weighed down by trying to support all legacy formats people expect.”</p>
<h2>One-Person-Software</h2>
<p>The decision to build just for yourself might sound counterproductive: how would you market it, how would the app get users if it made only for one person?!</p>
<p>But if you had been to the rabbit hole of marketing books, you would have discovered that a common advice is to build for a very specific person in mind. They call it ICP (Ideal Customer Profile) and no, it has nothing to do with the age, or geografical location, or gender. The best and most useful description of an ideal customer comes from knowing their beliefs and needs.</p>
<p>When you are your own ideal customer that’s gotta make it a lot easier and if noone ever use the software you make - at least you get a custom made software out of it! I think there’s another side effect to this “selfish” software-for-the-sake-of-software process: when you don’t think about how much money you’d make out of it or how you’d be advertisting it - your software becomes an art piece, a reflection of your own values, thoughts and perspective.</p>
<p>And when it comes to psikat - it became a reflection of its creator’s view on the art in general and music in particular.</p>
<p>One of the main distinguishing aspect of tracker programs and an element that is central to psikat - is that the notes/commands are arranged and read vertically, as opposed to horizontally in more mainstream and modern music software. Hence the Ψ (psi) letter, that is often used to denote the Y-axis in Greek mathematics.</p>
<p>So why would someone who used to write music left-to-right suddenly would decide to turn things a quarter down?</p>
<p>Redas says that the inherent difficulty of making music in a tracker <strong>is</strong> the main feature for him: “If you’re coming from a traditional DAW, you can be sure that it will force you to break out of patterns you’re stuck in and make you see music from a completely different perspective.”</p>
<h2>Back to the future with LLMs</h2>
<p>Both Michael Palace music and holoflash interfaces have this old-school feeling to it; he compares trackers to vim and DAW to VSCode; so, naturally, I had to ask about his relationship with AI. What place does modern day tools take in his work?</p>
<p>“With AI I’m able to iterate fast and try out many different ideas and avoid becoming a victim to the sunk cost fallacy” - he said, “For example, at some point I started to doubt that I could achieve the performance I wanted using wasm in the browser so I had Claude rebuild the whole thing in SolidJs.”</p>
<p>And after doing some research he discovered “the thing that would make the Rust version work as intended” and just as quickly deleted the whole javascript version and went back to wasm.</p>
<p>Redas shared, that the speed it took to try out a completely different stack didn’t leave him feeling like he had wasted his time, but instead helped to try different approaches, remove any doubts and continue with what works.</p>
<p>“Also, working with audio requires a level of mathematic prowess that I simply don’t possess” - he adds, “but it’s an already solved problem that I’m not that excited about re-solving.”. AI  allowed him to focus more on the essentials, not the implementation details.</p>
<p>And his essentials are: How does it perform? How does it feel to use? Can I make music with it and does it sound any good?</p>
<h2>Don’t build a DAW</h2>
<p>Redas shared that his only regret was that he hasn’t built psikat sooner:</p>
<blockquote>
<p>People often <a href="https://www.youtube.com/watch?v=GMlnh6_9aTc&amp;t=6s">advise against building a DAW</a> and with good merit. It’s a very very complex piece of software to build. And based on what people online were saying, I was too scared to even try to start. But you can trick yourself into building a DAW, if you don’t start by building a DAW.</p>
</blockquote>
<p>He started by building an audio file browser for the terminal, then one small goal after another psikat came to be as it is today. It’s not what you would consider a DAW yet (it lacks recording capabilities), but you can mix a song right there in your browser, like this one, I called it “psikat jam”:</p>
<p><audio controls="1" controlslist="nodownload nofullscreen noremoteplayback" src="psikat_jam.wav" loop><a href="psikat_jam.wav">Click to play</a></audio></p>
<p>I imagine this could be a soundtrack to something like nyan cat, but way cooler:
<img src="https://gist.githubusercontent.com/s-shivangi/7b54ec766cf446cafeb83882b590174d/raw/8957088c2e31dba6d72ce86c615cb3c7bb7f0b0c/nyan-cat.gif" alt="“Nyan cat shooting through the stars leaving a rainbow trail" /></p>
<p>I don’t think I fully explored what psikat has to offer: my relationship with my own music is complicated. And if this is what the app can do today, in its alpha version, I can only imagine what v1.0 would do!</p>
<p>I bet it would be intentionally unconventional for a good reason.
Or in the words of its unconventional creator Redas aka Michael Palace aka holoflash:</p>
<blockquote>
<p>If using psikat can help at least one other person be creative and express themselves in their own voice, I’ve accomplished everything I could ever dream of.</p>
</blockquote>
<p>I encourage you to try it out at <a href="https://psikat.com">psikat.com</a> and join <a href="https://discord.gg/2a7jghQ2W">Discord</a>.
It is a great little software.</p>
]]></description>
    </item>
  </channel>
</rss>
