全能知识管理软件。它整合了笔记/日记、知识库、Markdown 编辑器、任务待办、日历、看板/项目管理等功能于一身,可以完美替代多款工具。

Jesús Espino 345ff01539 MM-43342: More strict permissions on categories (#4504) 2 days ago
.github d6207dde6c MM-49703: Bump to Go 1.19 (#4489) (#4502) 5 days ago
.vscode 2b3ed75b3b Add readme for Mac and Win apps (#2757) 9 months ago
build d6207dde6c MM-49703: Bump to Go 1.19 (#4489) (#4502) 5 days ago
docker a8bafb35c9 [GH-124] Added Docker Arm64 Capability (#1700) 2 months ago
docker-testing 2a5c033fa5 Idempotent schema and data migrations (#4253) 1 month ago
docs 2cead9a444 Minor updates to the contributor's guide (#2526) 10 months ago
experiments de576ec5ff update webapp dependencies (#3317) 6 months ago
import 42ddbbdd69 Update URL to docs page for migrating and reference `.boardarchive` (#4043) 3 months ago
linux d6207dde6c MM-49703: Bump to Go 1.19 (#4489) (#4502) 5 days ago
mac e1c747d08b Update Boards version to 7.3 (#3382) 6 months ago
mattermost-plugin d6207dde6c MM-49703: Bump to Go 1.19 (#4489) (#4502) 5 days ago
noticegen 111d741ad7 [feat] Notice.txt generation configuration 6 months ago
server 345ff01539 MM-43342: More strict permissions on categories (#4504) 2 days ago
webapp d7fd0980dd Multiple UI Fixes (Modals and person property label (#4503) 3 days ago
website bf1c1a82b1 Focalboard Website Update V2 (#4391) 3 days ago
win-wpf 073ef8af75 update to version 7.2.0 8 months ago
.dockerignore a8bafb35c9 [GH-124] Added Docker Arm64 Capability (#1700) 2 months ago
.editorconfig cb306f27db Adding initial coding style checking 2 years ago
.gitattributes 04223a3f76 Git attributes for ignoring website and swagger docs in linguist added. (#3172) 7 months ago
.gitignore ae384e7e5b [GH-4086] Doc: Personal server setup guide out of date (#4114) 2 months ago
.gitlab-ci.yml d6207dde6c MM-49703: Bump to Go 1.19 (#4489) (#4502) 5 days ago
.gitpod.yml f2a0cffce1 Create .gitpod.yml (#3010) 8 months ago
CHANGELOG.md 07aed80867 Update CHANGELOG.md for v0.15 11 months ago
CONTRIBUTING.md 5baa0e63ec Minor fixes to Focalboard docs (#2665) 10 months ago
Dockerfile.build 2ab4e95289 Updated go version (#3189) 7 months ago
LICENSE.txt 3c58869de3 License product name 2 years ago
Makefile 2a5c033fa5 Idempotent schema and data migrations (#4253) 1 month ago
NOTICE.txt 8425f53b2a @mention support (#1147) 1 year ago
README.md f8964ab101 Added API docs in readme (#4319) 1 month ago
SECURITY.md b17e555a54 Add SECURITY.md (#2349) 10 months ago
app-config.json a10beb52a2 Fix indentation 1 year ago
config.json 539aee6a46 Fix configuration for prometheus address (#2763) 9 months ago
modd-servertest.conf b582e5920c Add sqlite3 tag to modd files and linux app build (#4218) 2 months ago
modd-watchplugin.conf 81284ed057 Remove indir directive as it's causing problems in OSX systems (#1328) 1 year ago
modd.conf b582e5920c Add sqlite3 tag to modd files and linux app build (#4218) 2 months ago
pull_request_template.md d8ffd30fff Update pull_request_template.md (#3487) 6 months ago
responsible_disclosure_policy.md 9cb200a831 Update responsibile_disclosure_policy.md (#1383) 1 year ago
server-config.json 539aee6a46 Fix configuration for prometheus address (#2763) 9 months ago

README.md

Focalboard

CI Status CodeQL Dev Release Prod Release Translation status

Like what you see? :eyes: Give us a GitHub Star! :star:

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 main editions:

Focalboard can also be installed as a standalone Personal Server for development and personal use.

Try Focalboard

Mattermost Boards - now available as a free cloud server

Mattermost Boards combines project management tools with messaging and collaboration for teams of all sizes. To access and use Mattermost Boards, install or upgrade to Mattermost v6.0 or later as a self-hosted server or Cloud server. After logging into Mattermost, select the menu in the top left corner and select Boards.

*Mattermost Boards is installed and enabled by default in Mattermost v6.0 and later.*

See the plugin setup guide for more details.

Personal Desktop (Windows, Mac or Linux Desktop)

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

Contribute to Focalboard

Contribute code, bug reports, and ideas to the future of the Focalboard project. We welcome your input! Please see CONTRIBUTING for details on how to get involved.

Getting started

Our developer guide has detailed instructions on how to set up your development environment for the Personal Server. It also provides more information about contributing to our open source community.

Clone mattermost-server into sibling directory.

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

EXCLUDE_ENTERPRISE="1"

To build the server:

make prebuild
make

To run the server:

 ./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

Translating

Help translate Focalboard! The app is already translated into several languages. We welcome corrections and new language translations! You can add new languages or improve existing translations at Weblate.

Staying informed

Are you interested in influencing the future of the Focalboard open source project? Here's how you can get involved: