All Projects → moussetc → mattermost-plugin-spoiler

moussetc / mattermost-plugin-spoiler

Licence: Apache-2.0 License
A Mattermost plugin to add a command for spoiler messages

Programming Languages

go
31211 projects - #10 most used programming language
Makefile
30231 projects
javascript
184084 projects - #8 most used programming language
typescript
32286 projects

Projects that are alternatives of or similar to mattermost-plugin-spoiler

react-redux-exercise
Exercise to understand better react-redux, how it works and how to use it.
Stars: ✭ 48 (+182.35%)
Mutual labels:  react-redux
react-native-boilerplate
React Native Boilerplate - React Native Starter Kits : react-navigation and its dependencies, redux, redux persist and redux thunk, redux toolkit, react native vector icons, react-native async storage
Stars: ✭ 68 (+300%)
Mutual labels:  react-redux
trivin
⚡️Setup your entire project quickly and easily with 1-line command ⚡️
Stars: ✭ 58 (+241.18%)
Mutual labels:  react-redux
tomatoro
Time management tool based on Pomodoro Technique.
Stars: ✭ 23 (+35.29%)
Mutual labels:  react-redux
kodlama.io-javareactcamp
Java - React Camp Works | Kodlama.io
Stars: ✭ 33 (+94.12%)
Mutual labels:  react-redux
serverless-grocery-app
Grocery Purchase app with serverless AWS Lambda + DynamoDB + React
Stars: ✭ 28 (+64.71%)
Mutual labels:  react-redux
cra-redux-boilerplate
⚛️🔨create-react-app application with redux and another cool libraries to make your life easier.
Stars: ✭ 15 (-11.76%)
Mutual labels:  react-redux
OneArtical
learning and practice redux,react-redux,redux-saga,redux-persist,redux-thunk and so on
Stars: ✭ 61 (+258.82%)
Mutual labels:  react-redux
okdux
redux made ok 👌
Stars: ✭ 16 (-5.88%)
Mutual labels:  react-redux
mattermost-plugin-custom-attributes
Mattermost plugin for adding custom attributes to users!
Stars: ✭ 26 (+52.94%)
Mutual labels:  mattermost-plugin
network-pipeline
Network traffic data pipeline for real-time predictions and building datasets for deep neural networks
Stars: ✭ 36 (+111.76%)
Mutual labels:  react-redux
react-zhufengapp
这是珠峰培训react课程前端页面
Stars: ✭ 11 (-35.29%)
Mutual labels:  react-redux
metasfresh-webui-frontend-legacy
metasfresh Webui Frontend
Stars: ✭ 57 (+235.29%)
Mutual labels:  react-redux
react-native-shopping-app
A shopping app using React Navigation, Redux, Redux-Thunk and Firebase.
Stars: ✭ 67 (+294.12%)
Mutual labels:  react-redux
react-redux-spotify
React + Redux + Spotify web api boilerplate project
Stars: ✭ 14 (-17.65%)
Mutual labels:  react-redux
SHOPMATE
front-end e-commerce system
Stars: ✭ 12 (-29.41%)
Mutual labels:  react-redux
MetFlix
A Movie app demo. Like NetFlix ❤️
Stars: ✭ 50 (+194.12%)
Mutual labels:  react-redux
react-redux-crud
An example react-redux-saga CRUD application
Stars: ✭ 47 (+176.47%)
Mutual labels:  react-redux
HelloBooks
HelloBooks is a full stack javascript app that implements a simple digital library for keeping, borrowing managing all kinds of literature.
Stars: ✭ 20 (+17.65%)
Mutual labels:  react-redux
mattermost-plugin-jenkins
A Mattermost plugin to interact with Jenkins
Stars: ✭ 25 (+47.06%)
Mutual labels:  mattermost-plugin

Mattermost SPOILER Plugin Build CI

Maintainer: @moussetc

This plugin creates a slash command to display spoiler messages in a non-spoiling way.

Usage

Type /spoiler followed by your spoiler, then post your message. (The spoiler can be on more than one line, it can contain emojis, URLs, images, etc. All will be hidden.)

Two display modes are available for spoiler messages:

  • Spoiler button mode:
    Spoiler button demo

  • Redacted mode:
    Redacted spoiler demo
    This mode is not available on native apps like Android. Native apps do not yet support plugin customization, so for now they will use the Spoiler button mode.

Compatibility

Use the following table to find the correct plugin version for each Mattermost server version:

Mattermost server Plugin release Incompatibility
5.39.0 and higher v3.1.x security fixes (upgrading dependencies)
5.14 to 5.25 v3.x.x relative integration URLs
5.3 to 5.13 v2.x.x
below not supported plugins can't create slash commands

Installation and configuration

  1. Download the release package and download the .tar.gz package. Supported platforms are: Linux x64, Windows x64, Darwin x64, FreeBSD x64.
  2. Use the Mattermost System Console > Plugins > Management page to upload the .tar.gz package
  3. Activate the plugin in the System Console > Plugins > Management page
  4. Choose the display mode: go to the System Console > Plugins > Spoiler Command, select the mode and save the plugin's settings.
    Plugin settings

Configuration Notes in HA

If you are running Mattermost v5.11 or earlier in High Availability mode, please review the following:

  1. To install the plugin, use these documented steps
  2. Then, modify the config.json using the standard doc steps to the following
 "PluginSettings": {
        // [...]
        "PluginStates": {
            // [...]
            "com.github.moussetc.mattermost.plugin.spoiler": {
                "Enable": true,
		        "SpoilerMode": "button"
            },
        }
    }

Development

To avoid having to manually install your plugin, build and deploy your plugin using one of the following options.

Deploying with Local Mode

If your Mattermost server is running locally, you can enable local mode to streamline deploying your plugin. Edit your server configuration as follows:

{
    "ServiceSettings": {
        ...
        "EnableLocalMode": true,
        "LocalModeSocketLocation": "/var/tmp/mattermost_local.socket"
    }
}

and then deploy your plugin:

make deploy

You may also customize the Unix socket path:

export MM_LOCALSOCKETPATH=/var/tmp/alternate_local.socket
make deploy

If developing a plugin with a webapp, watch for changes and deploy those automatically:

export MM_SERVICESETTINGS_SITEURL=http://localhost:8065
export MM_ADMIN_TOKEN=j44acwd8obn78cdcx7koid4jkr
make watch

Deploying with credentials

Alternatively, you can authenticate with the server's API with credentials:

export MM_SERVICESETTINGS_SITEURL=http://localhost:8065
export MM_ADMIN_USERNAME=admin
export MM_ADMIN_PASSWORD=password
make deploy

or with a personal access token:

export MM_SERVICESETTINGS_SITEURL=http://localhost:8065
export MM_ADMIN_TOKEN=j44acwd8obn78cdcx7koid4jkr
make deploy

How do I share feedback on this plugin?

Feel free to create a GitHub issue or to contact me at @cmousset on the community Mattermost instance to discuss.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].