onestopjs

by Martin Koparanov

0%

Newspaper and coffee

LazyDigest


Dumb name, I know, I am a better software developer than a copywriter.

Do you hate reading news, which you do not care about, sifting through all the noise until you get to something you are interested in?
This is the problem that this project solves.

This is a news aggregator, based on a set of keywords that you define yourself. For example, let's say you invested money in Tesla and Amazon. You would add "tesla" and "amazon" as keywords, and you would only get news about them.

You can't always read about the same things though, so there is the feature of Keyword Sets, which lets you group multiple keywords and let you switch between them.

There is a commenting and voting system. Every article can be commented on and voted on. Comments also have votes.

Frontend

The frontend was built with React + TypeScript. The backend communication was via GraphQL.

The frontend is highly focused on having a lot of gesture controls to make it feel like a native app, and most of the time you could not tell that you are in a web browser.

Backend

The backend was built with NodeJS + TypeScript. For the GraphQL implementation, Apollo Server was used. As a database, I wanted a non-relational one, so I chose MongoDB for its relatively easy scalability and great ease of use. And it is the most famous one, so it was not a choice. For caching I used Redis.

Where it is now

I created the project as a hobby project. When I finished it, I didn't have the desire to expand it further. I am not a businessman and I had no interest in being one. I wanted someone else to take over and maybe expand on the idea. It would be better than having the website sit with 0 traffic, even if I never see any profit they make. So I found a company that was willing to buy it off me for basically pocket money, and I agreed to sell it. The guys were cool though, so I wanted to see it succeed.

Unfortunately, I have not had any contact with them since I sold it, and I have not seen any progress being made. So I guess it is dead now.

Because it is no longer mine, I didn't want to give away any details of how it was implemented, although I think it is quite interesting.