Skip to content

The KiwiBuild website has no functionality to notify you when new properties come online. This project fixes that.

Notifications You must be signed in to change notification settings

haydenjeune/kiwibuild-notify

Repository files navigation

kiwibuild-notify

This project exists because new properties come up for sale quite often on the KiwiBuild website, however there is no way to configure notifications! This project fixes that by checking for new properties once a day, and sending a notification via email.

Design

The design is described by the diagram below. The application has been split into two Lambda functions. One reads and stores the properties from the website, and is triggered once a day. The other is responsible for sending the notifications, and is triggered on changes to the properties in the database via a DynamoDB table stream. A email is then sent to me via a SNS topic.

Design chart

Requirements

Setup process

Installing dependencies & building the target

To automatically download all the dependencies and package build targets, use

make build

Local development

Invoking locally

The function that scrapes the KiwiBuild website and stores the result in DynamoDB can be run locally with:

make run-local-scrape

Note that this will run a local version of DynamoDB at http://localhost:8000

Building diagram

The diagram above is created using the diagrams Python package in docs/architecture.py. To build a new diagram after changes to this file, run

make diagram

Note: The Graphviz library must be installed for this to work.

Packaging and deployment

To deploy the last built version of the application, run

sam deploy

About

The KiwiBuild website has no functionality to notify you when new properties come online. This project fixes that.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published