focalboard

Focalboard is an open source, self-hosted alternative to Trello, Notion, and Asana.

26,147 stars TypeScript Markdown Skills API Spec #asana#collaboration#goal-tracking#golang
AI Prompts & Specs

Repository: mattermost-community/focalboard


Stars: 26045

README.md

WARNING

This repository is currently not maintained. If you're interested in becoming a maintainer please let us know here.


> This repository only contains standalone Focalboard. If you're looking for the Mattermost plugin please see mattermost/mattermost-plugin-boards.

Focalboard

!CI Status
!CodeQL
!Dev Release
!Prod Release

!Focalboard

Focalboard is an open source, multilingual, self-hosted project management tool that's an alternative to Trello, Notion, and Asana.

It helps define, organize, track and manage work across individuals and teams. Focalboard comes in two editions:

* Personal Desktop: A standalone, single-user macOS, Windows, or Linux desktop app for your own todos and personal projects.

* Personal Server: A standalone, multi-user server for development and personal use.

Try Focalboard

Personal Desktop (Windows, Mac or Linux Desktop)

* Windows: Download from the Windows App Store or download focalboard-win.zip from the latest release, unpack, and run Focalboard.exe.
* Mac: Download from the Mac App Store.
* Linux Desktop: Download focalboard-linux.tar.gz from the latest release, unpack, and open focalboard-app.

Personal Server

Ubuntu: You can download and run the compiled Focalboard Personal Server on Ubuntu by following our latest install guide.

API Docs

Boards API docs can be found over at <https://htmlpreview.github.io/?https://github.com/mattermost/focalboard/blob/main/server/swagger/docs/html/index.html>

Getting started

Our developer guide has detailed instructions on how to set up your development environment for the Personal Server. You can also join the ~Focalboard community channel to connect with other developers.

Create an .env file in the focalboard directory that contains:

text
EXCLUDE_ENTERPRISE="1"

To build the server:

text
make prebuild
make

To run the server:

text
./bin/focalboard-server

Then navigate your browser to http://localhost:8000 to access your Focalboard server. The port is configured in config.json.

Once the server is running, you can rebuild just the web app via make webapp in a separate terminal window. Reload your browser to see the changes.

Building and running standalone desktop apps

You can build standalone apps that package the server to run locally against SQLite:

* Windows:
Requires Windows 10, Windows 10 SDK 10.0.19041.0, and .NET 4.8 developer pack*
* Open a git-bash prompt.
* Run make prebuild
* The above prebuild step needs to be run only when you make changes to or want to install your npm dependencies, etc.
* Once the prebuild is completed, you can keep repeating the below steps to build the app & see the changes.
* Run make win-wpf-app
* Run cd win-wpf/msix && focalboard.exe
* Mac:
Requires macOS 11.3+ and Xcode 13.2.1+*
* Run make prebuild
* The above prebuild step needs to be run only when you make changes to or want to install your npm dependencies, etc.
* Once the prebuild is completed, you can keep repeating the below steps to build the app & see the changes.
* Run make mac-app
* Run open mac/dist/Focalboard.app
* Linux:
Tested on Ubuntu 18.04*
* Install webgtk dependencies
* Run sudo apt-get install libgtk-3-dev
* Run sudo apt-get install libwebkit2gtk-4.0-dev
* Run make prebuild
* The above prebuild step needs to be run only when you make changes to or want to install your npm dependencies, etc.
* Once the prebuild is completed, you can keep repeating the below steps to build the app & see the changes.
* Run make linux-app
* Uncompress linux/dist/focalboard-linux.tar.gz to a directory of your choice
* Run focalboard-app from the directory you have chosen
* Docker:
* To run it locally from offical image:
* docker run -it -p 80:8000 mattermost/focalboard
* To build it for your current architecture:
* docker build -f docker/Dockerfile .
* To build it for a custom architecture (experimental):
* docker build -f docker/Dockerfile --platform linux/arm64 .

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.

Unit testing

Before checking in commits, run make ci, which is similar to the .gitlab-ci.yml workflow and includes:

* Server unit tests: make server-test
* Web app ESLint: cd webapp; npm run check
* Web app unit tests: cd webapp; npm run test
* Web app UI tests: cd webapp; npm run cypress:ci

Staying informed

* Changes: See the CHANGELOG for the latest updates
* Bug Reports: File a bug report
* Chat: Join the ~Focalboard community channel