At first, LowFlow was still simple.
There was really one thing to get right: turn the idea of the journal into something practical enough to actually be used. Not a mockup. Not a demo. A tool where you could log a day of trading, come back to it, and start learning from your own data.
The first goal: stop losing the context
A trade, taken on its own, barely tells you anything. An entry. An exit. A profit or a loss. But around that trade, there's a lot more. The plan before the session. The reason for the entry. The setup. The state of mind. The quality of the execution. The chart screenshot. The notes taken after the trade. And sometimes, days later, the trader wants to understand why that decision felt right at the time.
So the prototype started accumulating these pieces. Trades. Notes. Plans. Statistics. Screenshots. Analysis. Replay. With every new feature, the journal became a little less of a simple log and a little more of a working environment.
The journal had to tell the story of the day
One of the important ideas was being able to look back at a session as a whole. Not just a series of transactions. In LowFlow, the trader can prepare their pre-market plan, then find that plan directly inside their trading day. Right next to it, they then see what actually happened: their P&L, their win rate, their profit factor, their expectancy, their drawdown, their trades, their setups, their notes.
So the plan doesn't disappear once the market opens. It stays attached to the day. The trader can compare what they had planned with what they actually executed. That's where the journal starts becoming useful.
Screenshots become part of the analysis
Images quickly became an important part of the picture. The trader can drag and drop a screenshot or import it directly into the journal. But I didn't want it to stay a plain attachment. They can then edit it, add text, mark what they were looking at, document an entry or an exit, and keep that image with the rest of the trade's context.
A screenshot becomes part of the trade's memory. Weeks later, they're not just looking at a result. They can see what they were actually looking at on the market.
Statistics, but never imposed
Another choice came up very early. Many systems calculate everything across all accounts combined. I didn't want that. The trader had to be able to decide which accounts went into their calculations.
So the left panel became a lot more than a menu. It controls the active context of the journal. The trader selects the accounts they want to analyze, and the statistics build themselves around that selection. If they only want to look at two funded accounts, they can. If they want to compare a specific group, they can. If they want to include everything, they can do that too.
Once again: Trader Chooses.
A bit of personality too
I didn't want to build only gray tables full of numbers. The journal needed an identity. That's when small visual details started to appear: scrolling stats, more graphical views, panels that can collapse to free up space, and the private mode with its animated screen.
These aren't the most technically important features. But they serve something essential: making people want to use the journal. A tool you open every day needs to be pleasant to open.
Then the prototype started to get too serious
This is probably the moment the project changed in nature. At first, adding a feature simply meant editing the journal. Then features started depending on each other. Screenshots were taking up space. Data kept piling up. Replay needed more and more history. Accounts had to be organized. Settings started to matter. And the journal had to hold all of this without becoming heavy or unstable.
The prototype worked. But it was starting to outgrow what a simple HTML project could comfortably handle. It needed a real application structure now. That's where Tauri entered the story.
And that's also where I discovered that lightweight software can become very heavy very quickly if you don't get the decision right about where its data actually lives. That part cost me a lot more time than expected. It'll be the subject of the next episode.