Adam Veldhousen
3954a7a2c6
ci.vdhsn.com/push Build is failing
Details
|
11 months ago | |
---|---|---|
.vscode | 1 year ago | |
doc | 12 months ago | |
env | 11 months ago | |
src | 11 months ago | |
.drone.yml | 12 months ago | |
.gitignore | 12 months ago | |
.sops.yaml | 12 months ago | |
.tool-versions | 12 months ago | |
LICENSE | 1 year ago | |
Makefile | 11 months ago | |
README.md | 12 months ago | |
Tiltfile | 11 months ago | |
go.work | 1 year ago | |
go.work.sum | 11 months ago |
README.md
Barretthousen
Search and get alerts for items across the most popular auction sites.
Built with microservice architecture, for learning purposes
Links
- Keybase Team Chat
- Source
- Auction terms glossary
- User's Site
- Admin Panel
Goals
- Ability to search upcoming and live auctions across major auction sites
- Get an email digest of upcoming auctions for the week
Future goals
- Get email alerts when these auctions are about to go live
- Specify search criteria for email alerts
Technology
For Users
For Admins
Services
-
Web-client Frontend site that users access to browse upcoming auctions and subscribe for updates to their searches
-
Catalog API for searching upcoming auctions.
-
Ringman Manages email subscriptions and sending emails to users about upcoming auctions.
-
Runner Scrapes sites for upcoming auctions. Transforms the data into a suitable shape and stores it for use by the frontend.
-
Auctioneer Enables site administrators to kicks off scrape and email jobs in Runner and Ringman, and view status on current/past jobs.
-
BHDB Monolithic postgres datbabase tying it all together
Contributing
Install asdf
and run hack/asdf_plugin_setup
# install asdf tools, build tooling, encryption key for sops
make setup
# generate protobufs and sql boilerplate
make gen
# spin up a k8s cluster, build and deploy services locally w/ hot reloading
make dev
# build production docker images for the backend microservices, optionally push to the respective env
make build-backend-image SERVICE=[catalog, runner, proxy-client, proxy-admin] [ENV=[beta, prod]]
# build client docker image for web frontends, optionally push to the respective env
make build-client-image SERVICE=[web-client] [ENV=[beta, prod]]