Jobber is a dynamic job search RSS feed generator.
Are you tired of going from job portal to job portal doing your search? Those days are over! Jobber allows you to create job searches that will update hourly in the background and provide you an HTML or RSS feed for them.
Check it out! rssjobs.app
- Fetches offers from LinkedIn, Stepstone and Glassdoor*.
- RSS-XML and HTML feeds.
- Hourly updated job feeds with up to 7 days of offers.
- Automated unused job search deletion after one week of inactivity (ie. unsubscribed from the RSS feed).
- Server logs, usage and status metrics with Prometheus and Grafana.
* jobber scrapes only publicly available information
Make sure you have go, Docker and golang-migrate installed.
- (optional) Run test and lint with
make check
The deployment options are:
make buildbuilds Jobber and PostgreSQL only.make build-metricsadds the Prometheus/Grafana/logging stack and enables Jobber metrics.make build-cloudflareadds the metrics stack and Cloudflare Tunnel. SetCLOUDFLARE_TUNNEL_TOKENfirst.
Once up, try http://localhost for your local version of Jobber. The metrics option also exposes the Grafana dashboard at http://localhost:3000/dashboards.
This will create only the DB container and run the server without building it.
- Start developer mode with
make run
Once up, try http://localhost for your local dev version of jobber.
The server can be configured with the following environment variable and command-line options:
DB_CONNsets the PostgreSQL connection string. Themake runand Compose build targets use the local database connection from theMakefileby default.-portsets the address and port where the server listens. Defaults to:80.-metricsenables the/metricsendpoint and Prometheus metrics middleware. Disabled by default.-mockuses the mock scraper instead of the Live scrapers. This is intended for testing.-mockTimeoutsets the query creation timeout to one nanosecond. This is intended for testing.
For example, to run the server on port 8080 with metrics enabled:
DB_CONN="postgres://user:password@localhost:5432/jobber?sslmode=disable" go run main.go -port=:8080 -metrics