From 74c3edd635cf96a98154998c861bc7ccb3b36952 Mon Sep 17 00:00:00 2001 From: Christian Kellner Date: Wed, 3 Sep 2025 15:09:35 +0200 Subject: [PATCH] Update README.md --- README.md | 59 ++++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 41 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index b29cc01..958096e 100755 --- a/README.md +++ b/README.md @@ -1,37 +1,60 @@ +# Fredy – Self-Hosted Real Estate Search & Alerts for Germany + +Searching for an apartment or house in Germany can be frustrating. +Fredy makes it easier: it scrapes **ImmoScout24, Immowelt, Immonet, eBay Kleinanzeigen, and WG-Gesucht**, and notifies you instantly via **Slack, Telegram, Email, ntfy, and more** when new listings match your requirements. + +Fredy includes a **web UI** to configure your searches, prevents duplicates even across multiple platforms, and stores results so you won’t receive the same listing twice. + ![Test](https://github.com/orangecoding/fredy/actions/workflows/test.yml/badge.svg) [![Create and publish Docker image](https://github.com/orangecoding/fredy/actions/workflows/docker.yml/badge.svg)](https://github.com/orangecoding/fredy/actions/workflows/docker.yml) ![Check the sourcecode](https://github.com/orangecoding/fredy/actions/workflows/check_source.yml/badge.svg) -Searching an apartment in Germany can be a frustrating task. Not any longer though, as _Fredy_ will take over and will only notify you once new listings have been found that match your requirements. +## Key-Features -_Fredy_ scrapes multiple services (Immonet, Immowelt etc.) and send new listings to you once they become available. The list of available services can easily be extended. For your convenience, _Fredy_ has a UI to help you configure your search jobs. +- ✅ Scrapes **ImmoScout24, Immowelt, Immonet, eBay Kleinanzeigen, WG-Gesucht** +- ✅ Instant notifications: Slack, Telegram, Email (SendGrid, Mailjet), ntfy +- ✅ Reverse-engineered **ImmoScout mobile API** for reliable results +- ✅ Runs anywhere: Docker, Node.js, self-hosted +- ✅ Modern stack: Node.js, Express, React, Vite +- ✅ Web UI to manage your searches +- ✅ Deduplication and configurable search intervals -If _Fredy_ finds matching results, it will send them to you via Slack, Email, Telegram etc. (More adapters can be configured.) As _Fredy_ stores the listings it has found, new results will not be sent to you twice (and as a side-effect, _Fredy_ can show some statistics). Furthermore, _Fredy_ checks duplicates per scraping so that the same listings are not being sent twice or more when posted on various platforms (which happens more often than one might think). - -# Sponsorship [![](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub&color=%23fe8e86)](https://github.com/sponsors/orangecoding) - -If you like my work, consider becoming a sponsor. I'm not expecting anybody to pay for _Fredy_ or any other Open Source Project I'm maintaining, however keep in mind, I'm doing all of this in my spare time :) Thanks. - -[![JetBrains logo.](https://resources.jetbrains.com/storage/products/company/brand/logos/jetbrains.svg)](https://jb.gg/OpenSourceSupport) - -_Fredy_ is supported by JetBrains under Open Source Support Program +--- ## Demo If you want to try out _Fredy_, you can access the demo version [here](https://fredy.orange-coding.net) 🤘 -## Usage +--- -- Make sure to use Node.js 20 or above -- Run the following commands: +## Sponsorship [![](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub&color=%23fe8e86)](https://github.com/sponsors/orangecoding) -```ssh +If you find Fredy useful, consider supporting my work. +I maintain Fredy and other open source projects in my spare time – your sponsorship helps keep development active. Thanks for your support! + +[JetBrains](https://jb.gg/OpenSourceSupport) + +Fredy is proudly supported by **JetBrains** under their Open Source Support Program. + + +#### Usage + +- Requires **Node.js 20 or higher** +- Install dependencies and start both backend and frontend: + +```bash yarn -yarn run start:backend -yarn run start:frontend +yarn run start:backend # in one terminal +yarn run start:frontend # in another terminal ``` -_Fredy_ will start with the default port, set to `9998`. You can access _Fredy_ by opening your browser at `http://localhost:9998`. The default login is `admin`, both for username and password. You should change the password as soon as possible when you plan to run Fredy on a server. +Fredy will start on port 9998. +Open http://localhost:9998 in your browser. + +## Default login: + +Username: admin +Password: admin ## Screenshots