raahelpie/hn-for-me

Python

1

3 commits

updated Sep 21, 2026

See the code

See what people are saying (1)

README

Hacker News For Me

Hacker News For Me

Hey, I wanted to build something using a System One Model (like Jev), so I thought I'll build a service that takes a list of topics of my interests as inputs, and incrementally poll Hacker News using the Algolia Search API to filter only the stories which might interest me.

It first only checks the Title & URL and assigns a possibility score, if that is >=70%, then it parses the content of the page and decides how relevant it is. If it is >= 80%, then the story gets filtered.

My plan is to run it as a daemon on my homelab server and hook it up with baileys to send the interesting stories to me on WhatsApp.

Work is still in progress, but you can run it

Run locally

  1. Clone the repo: git clone https://github.com/raahelpie/hn-for-me.git && cd hn-for-me
  2. Create a .env file and set TYPESAFE_API_KEY
  3. Build the image and run the container
docker build -t hnforme .
docker compose up -d
  1. Open http://localhost:8000, enter interests, click Save, then run
  2. The backend automatically fetches new stories that match your interests every 10 minutes

How it works

  1. For the first run, it fetches from the frontpage and new stories posted in the last 10 minutes
  2. After the first run, it incrementally fetches the newly posted stories since the last fetched time
  3. There is a two pass check that is done to verify if the story is relevant or not
    • possibility check: a decision is taken on whether this story is possibly relevant based on Title and URL
    • relevance check: if possibility_score is greater than 0.7, page contents are fetched and another decision is made whether the the story is relevant - this time, based on the contents of the page

Note: The backend is human written code. No AI or even an IDE was used (I used Neovim). It can be changed a lot to fetch the results faster. It was great going through the documentation of all the libraries and writing code without the help of AI or even IDE autosuggestions or intellisense. (GPT-6 Astra Medium helped with setting up the client)

Contributors

raahelpie

3 commits

raahelpie/hn-for-me

Python

1

3 commits

updated Sep 21, 2026

See the code

See what people are saying (1)

README

Hacker News For Me

Hacker News For Me

Hey, I wanted to build something using a System One Model (like Jev), so I thought I'll build a service that takes a list of topics of my interests as inputs, and incrementally poll Hacker News using the Algolia Search API to filter only the stories which might interest me.

It first only checks the Title & URL and assigns a possibility score, if that is >=70%, then it parses the content of the page and decides how relevant it is. If it is >= 80%, then the story gets filtered.

My plan is to run it as a daemon on my homelab server and hook it up with baileys to send the interesting stories to me on WhatsApp.

Work is still in progress, but you can run it

Run locally

  1. Clone the repo: git clone https://github.com/raahelpie/hn-for-me.git && cd hn-for-me
  2. Create a .env file and set TYPESAFE_API_KEY
  3. Build the image and run the container
docker build -t hnforme .
docker compose up -d
  1. Open http://localhost:8000, enter interests, click Save, then run
  2. The backend automatically fetches new stories that match your interests every 10 minutes

How it works

  1. For the first run, it fetches from the frontpage and new stories posted in the last 10 minutes
  2. After the first run, it incrementally fetches the newly posted stories since the last fetched time
  3. There is a two pass check that is done to verify if the story is relevant or not
    • possibility check: a decision is taken on whether this story is possibly relevant based on Title and URL
    • relevance check: if possibility_score is greater than 0.7, page contents are fetched and another decision is made whether the the story is relevant - this time, based on the contents of the page

Note: The backend is human written code. No AI or even an IDE was used (I used Neovim). It can be changed a lot to fetch the results faster. It was great going through the documentation of all the libraries and writing code without the help of AI or even IDE autosuggestions or intellisense. (GPT-6 Astra Medium helped with setting up the client)

Contributors

raahelpie

3 commits

Languages

Python

36.9%

JavaScript

36.5%

CSS

16.1%

HTML

9.2%

Dockerfile

1.3%