1
0
mirror of https://github.com/mattermost/focalboard.git synced 2024-12-24 13:43:12 +02:00
Focalboard is an open source, self-hosted alternative to Trello, Notion, and Asana.
Go to file
Jesús Espino be28b7dad5
Migrate webapp global state to redux (#737)
* Migrating workspace tree to redux

* More changes for use the redux store for boads and views

* Taking into account the templates on websocket event updates

* Fixing bug on boardTree maintenance

* Websocket client now connects once and subscribe/desubscribe on the fly

* Including usage of the new websocket client

* More work around migrating to redux

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* Fixing some things

* WIP

* WIP

* Another small fix

* Restoring filtering, sorting and grouping

* Fixing some other bugs

* Add search text reducer

* Fixing another drag and drop problem

* Improve store names and api

* Fixing small bgus

* Some small fixes

* fixing login

* Fixing register page

* Some other improvements

* Removing unneeded old files

* Removing the need of userCache

* Fixing comments and fixing content ordering

* Fixing sort

* Fixing some TODOs

* Fixing tests

* Fixing snapshot

* Fixing cypress tests

* Fix eslint

* Fixing server tests

* Updating the add cards actions

* Fixing some tiny navigation problems

* Mocking the api calls to pass the tests

* Migrating a new test to redux

* Adding the card right after the insert of the block (not wait for ws event)

* Showing the ws disconnect banner only after 5 seconds of disconnection

* Fixing share view

* Fix eslint

* Fixing problem with sort/groupby modifications

* Fixing some details on redirections and templates creation

* Fixing small bugs around undo

* Fix update properties on click outside the dialog

* Improving the column resize look and feel

* Removing the class based objects from the store (now they are all plain objects

* Fix eslint

* Fixing tests

* Removing unneeded code
2021-08-02 17:46:00 +02:00
.github Use cross-env instead of win-node-env (#656) 2021-07-15 19:30:22 -07:00
.vscode Minor improvements for VSCode: (#675) 2021-07-08 12:08:00 +05:30
build Update MIT-COMPILED-LICENSE.md 2021-03-19 18:26:59 -07:00
docker fix: fixed user nobody not owning /data (#683) 2021-07-20 15:01:02 +02:00
import npm audit fix (#405) 2021-05-13 16:17:07 -06:00
linux Fix nil stringer error (#788) 2021-07-27 12:57:29 -04:00
mac Merge release-0.8.0 2021-07-16 10:30:45 -07:00
mattermost-plugin Adding support for embed the webapp into the plugin (#597) 2021-07-29 20:08:39 +02:00
server Migrate webapp global state to redux (#737) 2021-08-02 17:46:00 +02:00
webapp Migrate webapp global state to redux (#737) 2021-08-02 17:46:00 +02:00
website Use cross-env instead of win-node-env (#656) 2021-07-15 19:30:22 -07:00
win-wpf Merge release-0.8.0 2021-07-16 10:30:45 -07:00
.dockerignore docker: fix docker file image and apply some good practices (#552) 2021-07-01 11:46:03 +02:00
.editorconfig Adding initial coding style checking 2020-10-15 01:02:41 +02:00
.gitignore Remove enterprise symlink (#589) 2021-06-18 07:48:01 +02:00
.gitlab-ci.yml add variable to define the image (#581) 2021-06-15 14:00:05 +02:00
app-config.json Fix indentation 2021-02-10 10:13:04 -08:00
CHANGELOG.md Remove showView and showBoard property drilling and migrate centerPanel to functional component (#649) 2021-07-13 13:42:05 +02:00
config.json rename logger & audit config (#591) 2021-06-18 16:01:36 +02:00
CONTRIBUTING.md Adding Documentation section to CONTRIBUTING.md 2021-03-20 03:27:28 -07:00
Dockerfile.build docker: fix docker file image and apply some good practices (#552) 2021-07-01 11:46:03 +02:00
LICENSE.txt License product name 2021-01-26 13:55:35 -08:00
Makefile [GH-805] - Add Makefile documentation (#806) 2021-07-30 13:32:02 +02:00
NOTICE.txt Add webapp/NOTICE.txt 2021-01-27 12:03:39 -08:00
README.md Use cross-env instead of win-node-env (#656) 2021-07-15 19:30:22 -07:00
responsibile_disclosure_policy.md Adding responsible disclosure policy 2021-03-05 05:38:21 -08:00
server-config.json Enable prometheus metrics for Focalboard to enable observability (#414) 2021-05-18 17:12:51 +03:00

Focalboard

CI Status Mac Build Ubuntu Build Windows Build CodeQL Dev Release Plugin Release Prod Release

Like what you see? 👀 Give us a GitHub Star!

Focalboard

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

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

  • Focalboard Personal Desktop: A stand-alone desktop app for your todos and personal projects. This is a single-tenant locally run server running Focalboard for optimal speed and performance.

  • Focalboard Personal Server: A self-hosted server for your team to collaborate.

The same MIT-licensed binary powers both desktop and server editions.

Try out Focalboard

Focalboard Personal Desktop (Windows, Mac or Linux Desktop)

Try out Focalboard Personal Desktop by going to the Windows Store or the Apple AppStore, searching for Focalboard and installing to run the compiled version locally.

If you're running a Linux Desktop, download the latest focalboard-linux.tar.gz release, unpack the .tar.gz archive, and open focalboard-app from the focalboard-app folder.

Note: For Windows and Mac users, while we don't yet offer Focalboard Personal Desktop outside of Store-based installs, it is in consideration for the future (please upvote the ticket if you're interested in this addition).

Focalboard Personal Server (Ubuntu)

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

Download the latest server release from GitHub releases

Building the server

Please refer to the Developer's Tips & Tricks for more detailed steps. Here's a summary:

First, install basic dependencies:

  • Go 1.15+
  • Node 10+ and npm
  • Mingw64 on Windows
make prebuild
make

Running and testing the server

To start the server, run ./bin/focalboard-server

Server settings are in config.json.

Open a browser to http://localhost:8000 to start.

Building and running standalone desktop apps

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

  • Mac:
    • make mac-app
    • run mac/dist/Focalboard.app
    • Requires: macOS Catalina (10.15)+, Xcode 12+.
  • Linux:
    • Install webgtk dependencies
      • sudo apt-get install libgtk-3-dev
      • sudo apt-get install libwebkit2gtk-4.0-dev
    • make linux-app
    • run linux/dist/focalboard-app
    • Tested with: Ubuntu 18.04
  • Windows:
    • Open a git-bash prompt
    • make win-wpf-app
    • run cd win-wpf/msix && focalboard.exe
    • Requires: Windows 10

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 tests

Before checking-in commits, run: make ci, which is similar 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

Stay informed on progress

Share your feedback

File bugs, suggest features, join our forum, learn more here!

Contributing

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