← Back to posts

Building IR-analyzer

Background

Since LLMs are incredibly fast at reading text, I was thinking about how to leverage that ability when it occurred to me that while there are so many companies in the world, not all of them receive thorough analyst coverage. So I used Perplexity to find publicly listed U.S. companies that had no analyst coverage.

As it turned out, there were not that many companies with zero coverage. Still, that led me to another thought: reading IR materials like 10-Ks from start to finish is a lot of work. So I built an app that turns them into summaries of a more manageable length.

It is not doing anything especially sophisticated in terms of analysis, but it should be useful for people who want to quickly check a company’s recent performance. As long as the data can be pulled from SEC EDGAR, it can be used to get a quick overview of any company. The app itself is not the impressive part—SEC EDGAR is. For listed companies in Japan or Hong Kong, based on what I found, building a similar app would require a few more layers of work or the purchase of data from a vendor. Eventually, I would like to make it possible to generate summaries for markets outside the United States as well.

Prototype

At first, as usual, I talked with AI to work out the image and scope of the app. In that process, the reason we decided to focus only on the U.S. was the availability of a database and the ease of access.

Since it is a finance-related app, I also experimented a bit with things like adding the usual NFA (Not Financial Advice) disclaimer and deciding what to show during the wait while a report is being generated. The current version is different, but in the previous version there was a bouncing dog on the screen while the report was being generated.

Sign-Up Functionality and Monthly Usage Limits

Because the app uses LLMs, it is fine when only I am using it. But once it is made public, not having any usage limits could potentially create problems—although of course it is also entirely possible that it would not get used enough for that to matter.

I also wanted to try implementing user authentication and tracking usage counts by user, so I built that part as well. The app itself was already running on Vercel + Railway for personal use, but I used Supabase to add user authentication.

At first I tried to make it passwordless using Magic Link, but I got completely stuck, so I ended up going with password-based authentication. Since I only do AI-assisted coding, I am not sure whether I can really draw conclusions from this, but from the user’s point of view, Magic Link with no password feels extremely convenient. Yet I wonder whether the reason many apps do not use it is simply that it is harder to implement. I also did not consider Gmail sign-up this time, but maybe I should have considered it because that might be easier to implement.

Terms of Service, Privacy Policy, and General Impressions

Since I was adding sign-up functionality, I also had to properly prepare things like the Terms of Service and Privacy Policy. Building and launching an app really does feel a bit like mixed martial arts.

When I shared that impression with Hermes Agent (with DeepSeek as the brain), it told me that coding and development are only about 20 percent of the overall work.

Honestly, even an app at this level was still fairly time-consuming—although in actual working time it was only something like a few hours a day for three days. So when I see people saying that AI agents are autonomously building apps and making money for them, I cannot help wondering what exactly they are building that makes money. Or maybe they are not making money after all.

Introducing IR Analyzer

Anyone interested can try it using the link below. It allows up to 30 reports per month.

IR Analyzer