golang-cafe / job-board

Golang Cafe - Go job board with no recruiters and clear salary ranges
https://golang.cafe
BSD 3-Clause "New" or "Revised" License
206 stars 50 forks source link
go gojobs golang golangcafe golangjobs jobboard

Job Board

This is the first Go job board with no recruiters & clear salary ranges.

Tech Stack

Local Development Mode - Setup Guide

It's possible to setup a blank instance of this job board locally. This is a local development mode and it's different from the way the app runs in production. In this scenario the app runs on a minimal database containing mock data. The app has reduced functionality when ran in local development mode. It's not possible to send emails or connect to third party services, like Twitter, Telegram and FX APIs. It's still possible to run and test the app but with limited functionality.

Requirements

These are basic requirements with the respective versions have been tested to work locally on MacOS. The same should apply both on Linux and WSL/Windows.

Dependencies

Setup Guide

The only thing that needs to be setup in order for the app to run is the PostgreSQL database instance. Please run the following command in order to setup your local database instance.

./setup-database.sh

Once this command is successful you can now start the application

./run-local-webserver.sh

Test Cron-Jobs Locally

There are a few cron-jobs that are triggered on a schedule, these are scheduled externally via custom http calls to the website. You can see all available cron-jobs by searching for all routes that start with /x/task/.

In order to test a cron-job you can just make the following http request

curl -v -H 'x-machine-token: <machine-token>' -X POST http://localhost:9876/x/task/<task-name>

You can find the under your local environment variable configuration, in the MACHINE_TOKEN environment variable.

Telegram Group OSS discussions

https://t.me/+VloraT7W9yA1YTI8

Feedback?

Feel free to open an issue on GitHub

License

This source code is licensed under BSD 3-Clause License