What I built
I got tired of the constant doom and gloom of news so I made my own app that shows what's actually going right in the world.
It uses a carefully designed AI pipeline that whittles down 1000+ worldwide events every day to create 8 cross-checked stories, along with illustrations.
Rather than throwing a whole bunch of angry text at you, it shows you a calm mosaic for you to explore at your own pace.
The app is free to use, including access to previous digests. There are no ads or signup. Just an optional subscription to support the app.
How I built it
Built by myself in about a month.
It uses Python for the pipeline which taps into various OpenAI models. There are about a dozen or more fixed LLM steps centered around shortlisting, evidence checking, writing, publishing and so on. It is also multilingual and sometimes gets news before major English publishers.
Astro + Typescript is used for the website. Content is generated once per day and there are no user accounts allowing for efficient static content delivery that is easy to cache. Shared stories don't require an app to read them as they always have a web equivalent.
Android + iOS have a 92% shared codebase using Kotlin Multiplatform and Compose Multiplatform.
RevenueCat KMP drives optional subscriptions. The option to subscribe as a supporter is on the bottom of every story page (small text), the about page, and as a repeating custom modal that appears only after a large number of stories have been read. A dog/cat illustration is provided daily on the about page as a small thank you.
Challenges I ran into
Good news is very subjective - so we have to walk a fine line of what is perceived as generally good and meaningful. AI has it's own unobstructed view of the world so will tend towards deep science and health topics - however people can't feel good about things they can't understand. So the LLMs have to undergo a reasonable amount of guidance or coaching to thread the needle.
A lot of different issues have been dealt with such as distressing images from medical stories involving blood or surgery, or stories about science endeavours that ultimately benefit humans but involve invasive animal experimentation.
The objective is to create a generally safe and enjoyable space.
As the developer, it can cause a bit of stress and worry from time to time.
Accomplishments that I'm proud of
The whole system is fully automated. There are tools I have available for quick alterations to the digest but they are rarely needed nowadays. Digests today are generally of a high quality and cover a nice range of subjects.
I've posted a few stories to Reddit of developments that no one was aware of, and became very popular - which shows a demand for this kind of news and how hidden it can be: https://www.reddit.com/r/UpliftingNews/comments/1wsbdeg/indigenous_alliance_wins_1_million_for_protecting/ https://www.reddit.com/r/UpliftingNews/comments/1wpomgv/dogs_listen_for_word_patterns_much_like_we_do/
What I learned
News is tough and messy. You can't make everyone happy but you can try your best.
What's next for Good News Digest
Translations - some users have already mentioned a demand for it.
Built With
- cmp
- kmp
- python
- typescript
Log in or sign up for Devpost to join the conversation.