2 KiB
| date | title | draft | type | menu | ||||
|---|---|---|---|---|---|---|---|---|
| 2019-02-12:00:00+02:00 | Build from sources | false | doc |
|
Build Vikunja from source
To completely build Vikunja from source, you need to build the api and frontend.
{{< table_of_contents >}}
API
The Vikunja API has no other dependencies than go itself. That means compiling it boils down to these steps:
- Make sure Go is properly installed on your system. You'll need at least Go
1.17. - Make sure Mage is properly installed on your system.
- Clone the repo with
git clone https://code.vikunja.io/apiand switch into the directory. - Run
mage build:buildin the source of this repo. This will build a binary in the root of the repo which will be able to run on your system.
Note: Static ressources such as email templates are built into the binary.
For these to work, you may need to run mage build:generate before building the vikunja binary.
When builing entirely with mage, you dont need to do this, mage build:generate will be run automatically when running mage build:build.
Build for different architectures
To build for other platforms and architectures than the one you're currently on, simply run mage release:release or mage release:{linux|windows|darwin}.
More options are available, please refer to the [magefile docs]({{< ref "../development/mage.md">}}) for more details.
Frontend
The code for the frontend is located at code.vikunja.io/frontend.
You need to have yarn v1 and nodejs in version 16 installed.
- Make sure yarn v1 is properly installed on your system.
- Clone the repo with
git clone https://code.vikunja.io/frontendand switch into the directory. - Install all dependencies with
yarn install - Build the frontend with
yarn build. This will result in a js bundle in thedist/folder which you can deploy.