Skip to content

julianfbeck/pi-stock-de

Repository files navigation

Pi-Stock DE

Monitor and get notified if raspberry pis are available in german stores

Build Using

  • Backend:
    • Golang (hexagonal pattern)
    • Colly
    • fiber
  • Frontend:
    • React
    • Mantine
    • React-Query
    • Typescript

Monitored Stores

  • Bechtle
  • BerryBase
  • BuyZero
  • ELV
  • Funk24
  • OKDO
  • Pishop.ch
  • Rasppishop
  • Semaf.at
  • welectron

Get Notified using

Planned Features:

  • Delete-Route to enable users to unsubscribe from Notifications
  • Add more notification Services
    • Add RSS-Feed
  • Protect Create-Notification Route with Captcha
  • New Custom Fav-Icon
  • Use UUIDs instead of URLS to identify websites
  • Show broken/unreachable sites

Installation

The easiest way to use PI-STOCK is using the Docker Image

docker pull kickbeak/pi-stock-de
docker run -d -p 3001:3001 --env-file .env --name pi-stock-de kickbeak/pi-stock-de 

Environment Variables

Supply the environment variables using the .env file. See the .env.example file for all environment variables.

Development

PI-STOCK-DE is build using golang, go-fiber, and colly for scraping and React together with mantine for the frontend.

go run main.go
cd frontend
npm build

To develop the frontend live, you need to change the cors settings for the go-fiber config.

Add new Shop

To add a new shop, you can simply create a new adaptor inside the adaptors folder.

Add the Shop URLs to monitor to the websites.yaml file, and initialize the adaptor inside the main.go file.

About

Get notified when a raspberry pi is in stock in german stores (Currently not working 100%)

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published