1
0
mirror of https://github.com/mattermost/focalboard.git synced 2024-12-21 13:38:56 +02:00
focalboard/docs/focalboard-dev-guide.md
Carrie Warner (Mattermost) 277ea9facc
Transitioning Mattermost Boards > Focalboards plugin docs (#4862)
* Transitioning Boards > Focalboards plugin docs

* Update docs/focalboard-plugin-end-user-guide.md

* Update docs/get-started-with-board-templates.md

* Update docs/get-started-with-board-templates.md

* Update docs/group-filter-sort-boards.md

* Update docs/group-filter-sort-boards.md

* Update docs/share-collaborate.md

* Update docs/import-export-backup-data.md

* Update docs/import-export-backup-data.md

* Fix MD table fomatting

* Added data collection content

* Added Focalboard import notes
2023-09-14 11:35:28 -06:00

3.2 KiB

Focalboard Plugin Developer's Guide

Important: Effective September 15th, 2023, Mattermost Boards transitions to being fully community supported as the Focalboard Plugin. Mattermost will no longer be maintaining this plugin - this includes bug fixes and feature additions. Instead, the plugin is open-sourced and made available indefinitely for community contributions in GitHub.

To build your own version of it:

  1. Build mattermost-plugin in the Focalboard repo
  2. Upload it as a custom plugin to your Mattermost server

Here are the steps in more detail:

Building the Focalboard plugin

Fork the Focalboard repo, clone it locally, and follow the steps in the readme to set up your dev environment.

Install dependencies:

# First-time setup dependencies
cd mattermost-plugin/webapp
npm install --no-optional
cd ../..
make prebuild

Build the plugin:

# Build webapp
make webapp

# Build plugin
cd mattermost-plugin
make dist

Refer to the dev-release.yml workflow for the up-to-date commands that are run as part of CI.

Uploading the plugin to your server

You can manually upload the plugin to your Mattermost Server:

  1. Enable custom plugins by setting PluginSettings > EnableUploads to true in the Mattermost config.json file
  2. Navigate to System Console > Plugins > Management and upload the generated .tar.gz package in your mattermost-plugin/dist directory
  3. Enable it (if needed)

Alternatively, you can install Mattermost locally and use make deploy to auto-deploy it for you:

First, build and run Mattermost locally:

  1. Follow the Mattermost Developers Guide to set up your environment
  • In particuler, make sure Docker is set up and running
  1. Fork mattermost-webapp, clone it locally, and make build
  2. Fork mattermost-server and clone it locally
  3. Run make config-reset to generate the config/config.json file
  4. Edit config/config.json:
  • Set ServiceSettings > SiteURL to http://localhost:8065 (docs)
  • Set ServiceSettings > EnableLocalMode to true (docs)
  • Set PluginSettings > EnableUploads to true (docs)
  1. Add an ENV var MM_SERVICESETTINGS_SITEURL with the same site URL used in the config
  2. Run make run-server in Mattermost

Now, to build and deploy the plugin:

  1. Clone / fork mattermost/focalboard
  2. Install the dependencies (see above)
  3. Run:
make webapp
cd mattermost-plugin
make deploy