https://github.com/julianfbeck/pi-stock-de
Get notified when a raspberry pi is in stock in german stores (Currently not working 100%)
https://github.com/julianfbeck/pi-stock-de
colly golang mantine raspberry-pi react stock
Last synced: about 2 months ago
JSON representation
Get notified when a raspberry pi is in stock in german stores (Currently not working 100%)
- Host: GitHub
- URL: https://github.com/julianfbeck/pi-stock-de
- Owner: julianfbeck
- Created: 2022-03-20T20:05:01.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2022-11-30T15:39:41.000Z (over 2 years ago)
- Last Synced: 2025-02-06T05:33:08.087Z (4 months ago)
- Topics: colly, golang, mantine, raspberry-pi, react, stock
- Language: Go
- Homepage: https://pi.juli.sh
- Size: 707 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 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
- Webhooks
- [Pushover](https://pushover.net/)## Planned Features:
- [x] Delete-Route to enable users to unsubscribe from Notifications
- [x] Add more notification Services
- [x] Add RSS-Feed
- [x] Protect Create-Notification Route with Captcha
- [x] 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.