In order to build Taskcafe, you will need
- Go 15.1+
- Node 14+
- Yarn
Building
Clone the repository
First, let's clone the repository:
git clone https://github.com/JordanKnott/taskcafe && cd taskcafe
Install Golang
Next, we will need to make sure Golang is installed.
You can follow the install instructions or run the following:
wget https://golang.org/dl/go1.15.1.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.15.1.linux-amd64.tar.gz
Install NodeJS
NodeJS is used to build the static assets for the front end. We recommend installing it through nvm
. Install the latest NodeJS version via nvm
nvm install 14.9.0
nvm use 14.9.0
Install yarn
Install yarn
with the following commands:
wget https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list
npm update
npm install -y yarn
Build the backend
Next we need to build the binary. This project uses Mage for its build tool.
To build the final binary, run:
go run cmd/mage/main.go install # installs the NodeJS depedencies
go run cmd/mage/main.go build # runs all the needed build steps
The binary can be found in the dist folder.
Running
Now we need to installl a database & configure Taskcafe.
Install Postgres
To install the Postgres database, run:
apt-get install -y postgres
Configure
Next, we need to let Taskcafe know how to connect to the database.
The available configuration methods can be found here.
Once the configuration is filled out, we need to run database migrations next by running
taskcafe migrate
Now you can run the web interface by running taskcafe web
.
./taskcafe web
If you're running Taskcafe on your local machine, you should be able to visit it by going to http://localhost:3333/