2021-01-26 21:13:05 +02:00
# Focalboard
2021-01-29 01:10:40 +02:00
[![Focalboard ](website/site/static/img/hero.jpg )](https://www.focalboard.com)
2021-01-27 01:54:21 +02:00
2021-01-29 01:10:40 +02:00
[Focalboard ](https://www.focalboard.com ) is an open source project management app for individuals and teams. It comes in two editions:
2021-01-26 21:13:05 +02:00
* **Personal Desktop**: A stand-alone desktop app for your todos and personal projects
* **Personal Server**: A self-hosted server for your team to collaborate
The same server binary powers both editions.
2020-10-08 18:26:05 +02:00
2020-10-26 21:45:40 +02:00
## Building the server
2020-10-08 18:26:05 +02:00
2021-02-04 01:25:38 +02:00
Please refer to the [Developer's Tips & Tricks ](https://www.focalboard.com/contribute/getting-started/dev-tips/ ) for more detailed steps. Here's a summary:
First, install basic dependencies:
* Go 1.15+
* Node 10+ and npm
* Mingw64 on Windows
2021-01-29 22:41:25 +02:00
2020-10-08 18:26:05 +02:00
```
2020-10-09 19:25:05 +02:00
make prebuild
2020-10-08 18:26:05 +02:00
make
```
2020-10-26 21:45:40 +02:00
## Running and testing the server
2020-10-08 18:29:48 +02:00
2021-01-29 00:23:52 +02:00
To start the server, run `./bin/focalboard-server`
2020-10-08 18:29:48 +02:00
Server settings are in config.json.
Open a browser to [http://localhost:8000 ](http://localhost:8000 ) to start.
2020-10-26 21:45:40 +02:00
2020-11-07 20:50:34 +02:00
## Building and running standalone desktop apps
2020-10-26 21:45:40 +02:00
2020-11-07 20:50:34 +02:00
You can build standalone apps that package the server to run locally against SQLite:
* Mac:
* `make mac-app`
2021-01-26 21:13:05 +02:00
* run `mac/dist/Focalboard.app`
2021-02-04 01:25:38 +02:00
* *Requires: macOS Catalina (10.15)+, Xcode 12+.*
2020-11-07 20:50:34 +02:00
* Linux:
2021-01-19 22:25:46 +02:00
* Install webgtk dependencies
* `sudo apt-get install libgtk-3-dev`
* `sudo apt-get install libwebkit2gtk-4.0-dev`
2020-11-07 20:50:34 +02:00
* `make linux-app`
2021-01-26 21:13:05 +02:00
* run `linux/dist/focalboard-app`
2021-01-29 22:41:25 +02:00
* *Tested with: Ubuntu 18.04*
2021-01-30 03:07:45 +02:00
* Windows:
2021-01-29 22:41:25 +02:00
* Open a git-bash prompt
2021-01-30 03:07:45 +02:00
* Install win-node-env `npm install -g win-node-env`
2020-11-07 20:50:34 +02:00
* `make win-app`
2021-01-26 21:13:05 +02:00
* run `win/dist/focalboard.exe`
2020-11-07 20:50:34 +02:00
* *Requires: Windows 10*
2020-10-26 21:45:40 +02:00
2021-01-19 22:25:46 +02:00
Cross-compilation currently isn't fully supported, so please build on the appropriate platform. Refer to the GitHub Actions workflows (build-mac.yml, build-win.yml, build-ubuntu.yml) for the detailed list of steps on each platform.
2021-01-20 20:01:32 +02:00
## Unit tests
Before checking-in commits, run: `make ci` , which is simlar to the ci.yml workflow and includes:
* Server unit tests: `make server-test`
* Webapp eslint: `cd webapp; npm run check`
* Webapp unit tests: `cd webapp; npm run test`
* Webapp UI tests: `cd webapp; npm run cypress:ci`
2021-03-04 19:40:53 +02:00
2021-03-04 19:46:27 +02:00
## Stay informed on progress
* **Changelog**: See [CHANGELOG.md ](CHANGELOG.md ) for the latest updates
* **Chat**: Join the [Focalboard community channel ](https://community.mattermost.com/core/channels/focalboard )
2021-03-04 19:40:53 +02:00
## Contributing
Contribute code, bug reports, and ideas to the future of the Focalboard project. We welcome your input! Please see [CONTRIBUTING.md ](CONTRIBUTING.md ) for details on how to get involved.