Mattermost

mattermost.org
Mattermost Icon

Mattermost has an open source edition, which can be self-hosted. It makes a good Slack alternative, with native desktop, mobile and web apps and a wide variety of integrations.

Open Source

Mattermost Source Code

Author

mattermost

Description

Mattermost is an open source platform for secure collaboration across the entire software development lifecycle..

#collaboration#golang#hacktoberfest#mattermost#monorepo#react#react-native

Homepage

https://mattermost.com

License

NOASSERTION

Created

15 Jun 15

Last Updated

28 Mar 24

Latest version

v9.7.0-rc2

Primary Language

TypeScript

Size

740,499 KB

Stars

27,864

Forks

6,792

Watchers

27,864

Language Usage

Language Usage

Star History

Star History

Recent Commits

  • M-ZubairAhmed (28 Mar 24)

    [MM-57369] Remote users no longer labeled as 'remote' after updates to the System Console Users UI (#26612) * new mixin created for text ellipsis * shared user indicator api modified * use shared icon indicator instead of tag

  • Jesse Hallam (28 Mar 24)

    Profile image from bytes (#26610) * ProfileImageBytes for EnsureBotOptions * leverage plugintest.NewAPI * fix linting * clarify ProfileImage* godoc

  • Saturnino Abril (28 Mar 24)

    CLD-7353 E2E: Disable sending diagnostics and security alert on test servers (#26510) * test: disable sending diagnostics and security alert on test servers * log notable server config

  • mattermod (27 Mar 24)

    Update latest version to 9.6.1

  • Matthew Birtch (27 Mar 24)

    MM-47680 Fix Thread Footer Buttons (#26603)

  • Daniel Espino García (27 Mar 24)

    Fix user group not being properly potitioned (#26608) * Fix user group not being properly potitioned * Update comment

  • Weblate (bot) (27 Mar 24)

    Translations update from Mattermost Weblate (#26577) * Update translation files Updated by "Cleanup translation files" hook in Weblate. Translation: Mattermost/webapp Translate-URL: https://translate.mattermost.com/projects/mattermost/webapp/ * Translated using Weblate (German) Currently translated at 100.0% (2577 of 2577 strings) Translation: Mattermost/server Translate-URL: https://translate.mattermost.com/projects/mattermost/server/de/ * Translated using Weblate (German) Currently translated at 100.0% (5945 of 5945 strings) Translation: Mattermost/webapp Translate-URL: https://translate.mattermost.com/projects/mattermost/webapp/de/ * Translated using Weblate (Polish) Currently translated at 100.0% (2577 of 2577 strings) Translation: Mattermost/server Translate-URL: https://translate.mattermost.com/projects/mattermost/server/pl/ * Translated using Weblate (Polish) Currently translated at 100.0% (5945 of 5945 strings) Translation: Mattermost/webapp Translate-URL: https://translate.mattermost.com/projects/mattermost/webapp/pl/ * Translated using Weblate (Czech) Currently translated at 94.2% (5605 of 5945 strings) Translation: Mattermost/webapp Translate-URL: https://translate.mattermost.com/projects/mattermost/webapp/cs/ * Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (2577 of 2577 strings) Translation: Mattermost/server Translate-URL: https://translate.mattermost.com/projects/mattermost/server/zh_Hans/ * Translated using Weblate (Polish) Currently translated at 100.0% (5945 of 5945 strings) Translation: Mattermost/webapp Translate-URL: https://translate.mattermost.com/projects/mattermost/webapp/pl/ * Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (5945 of 5945 strings) Translation: Mattermost/webapp Translate-URL: https://translate.mattermost.com/projects/mattermost/webapp/zh_Hans/ * Translated using Weblate (Thai) Currently translated at 0.9% (24 of 2577 strings) Translation: Mattermost/server Translate-URL: https://translate.mattermost.com/projects/mattermost/server/th/ * Translated using Weblate (Thai) Currently translated at 1.5% (94 of 5945 strings) Translation: Mattermost/webapp Translate-URL: https://translate.mattermost.com/projects/mattermost/webapp/th/ * Translated using Weblate (Polish) Currently translated at 100.0% (5945 of 5945 strings) Translation: Mattermost/webapp Translate-URL: https://translate.mattermost.com/projects/mattermost/webapp/pl/ * Translated using Weblate (Dutch) Currently translated at 99.9% (2575 of 2577 strings) Translation: Mattermost/server Translate-URL: https://translate.mattermost.com/projects/mattermost/server/nl/ * Translated using Weblate (Dutch) Currently translated at 99.9% (5943 of 5945 strings) Translation: Mattermost/webapp Translate-URL: https://translate.mattermost.com/projects/mattermost/webapp/nl/ * Translated using Weblate (Swedish) Currently translated at 97.4% (5793 of 5945 strings) Translation: Mattermost/webapp Translate-URL: https://translate.mattermost.com/projects/mattermost/webapp/sv/ * Translated using Weblate (Swedish) Currently translated at 100.0% (2577 of 2577 strings) Translation: Mattermost/server Translate-URL: https://translate.mattermost.com/projects/mattermost/server/sv/ * Translated using Weblate (Spanish) Currently translated at 81.3% (4834 of 5945 strings) Translation: Mattermost/webapp Translate-URL: https://translate.mattermost.com/projects/mattermost/webapp/es/ * Translated using Weblate (Swedish) Currently translated at 98.0% (5831 of 5945 strings) Translation: Mattermost/webapp Translate-URL: https://translate.mattermost.com/projects/mattermost/webapp/sv/ * Translated using Weblate (English (Australia)) Currently translated at 100.0% (2577 of 2577 strings) Translation: Mattermost/server Translate-URL: https://translate.mattermost.com/projects/mattermost/server/en_AU/ * Translated using Weblate (Spanish) Currently translated at 90.1% (2324 of 2577 strings) Translation: Mattermost/server Translate-URL: https://translate.mattermost.com/projects/mattermost/server/es/ * Translated using Weblate (English (Australia)) Currently translated at 100.0% (5945 of 5945 strings) Translation: Mattermost/webapp Translate-URL: https://translate.mattermost.com/projects/mattermost/webapp/en_AU/ * Translated using Weblate (Spanish) Currently translated at 81.3% (4835 of 5945 strings) Translation: Mattermost/webapp Translate-URL: https://translate.mattermost.com/projects/mattermost/webapp/es/ * Translated using Weblate (Swedish) Currently translated at 100.0% (5945 of 5945 strings) Translation: Mattermost/webapp Translate-URL: https://translate.mattermost.com/projects/mattermost/webapp/sv/ * Update translation files Updated by "Cleanup translation files" hook in Weblate. Translation: Mattermost/webapp Translate-URL: https://translate.mattermost.com/projects/mattermost/webapp/ --------- Co-authored-by: jprusch <rs@schaeferbarthold.de> Co-authored-by: master7 <marcin.karkosz@rajska.info> Co-authored-by: Ladislav Urbánek <urbanek@upfilm.cz> Co-authored-by: ThrRip <coding@thrrip.space> Co-authored-by: RyoKub <ryo.sakhu@gmail.com> Co-authored-by: Tom De Moor <tom@controlaltdieliet.be> Co-authored-by: MArtin Johnson <martinjohnson@bahnhof.se> Co-authored-by: Angel Mendez Cano <amendez1988@gmail.com> Co-authored-by: Matthew Williams <Matthew.Williams@outlook.com.au>

  • Scott Bishel (26 Mar 24)

    minor css fix (#26509) * minor css fix * Update _search.scss --------- Co-authored-by: Mattermost Build <build@mattermost.com>

  • Matthew Birtch (26 Mar 24)

    [MM-57175] Tour Point Theme Color Update (#26570)

  • Claudio Costa (26 Mar 24)

    [MM-57295] Bulk export: add roles and permission schemes (#26523) * Bulk export: add roles and permission schemes * Update mmctl docs * Fix log * Update mmctl tests * Update mmctl unit tests * Refactor to avoid extra calls * Update translations * Add test case * Fix test * Fix test

  • Maria A Nunez (26 Mar 24)

    Added error code in safety limit error (#26585) * Update error text * Typo * Update server/i18n/en.json Co-authored-by: Harrison Healey <harrisonmhealey@gmail.com> --------- Co-authored-by: Harrison Healey <harrisonmhealey@gmail.com>

  • Nick Misasi (25 Mar 24)

    [CLD-7373] Always overwrite CloudSettings based on service environment when in production (#26581) * Always overwrite CloudSettings based on service environment * Only override the CWSURL, leave CWSAPIURL * Update to allow tests to pass * Undo unintentional changes

  • Anna Os (25 Mar 24)

    [GH-21216] Function removeUserFromChannel return error (#26428)

  • Andrea (25 Mar 24)

    migrate post_image.tsx to function component (#26395)

  • Anna Os (25 Mar 24)

    [GH-26382] format command mmctl auth list (#26423)

  • Ben Schumacher (25 Mar 24)

    [MM-57392] Skip flaky TestEditChannelBookmark test (#26565)

  • mattermod (22 Mar 24)

    Update latest version to 9.6.0

  • Christopher Poile (22 Mar 24)

    update prepackaged calls to v0.25.1 (#26557) Automatic Merge

  • FutureFoodBanker (22 Mar 24)

    [MM-47824] fix promoteGuestToUserCmdF to handle the proper errors (#26397) Co-authored-by: Mattermost Build <build@mattermost.com>

  • Ben Schumacher (22 Mar 24)

    [MM-57106] Remove unused cluster settings (#26490)

  • Harshil Sharma (22 Mar 24)

    Fixded go modules by modules-tidy (#26558)

  • Agniva De Sarker (22 Mar 24)

    MM-57378: Bump up golangci version (#26535) https://mattermost.atlassian.net/browse/MM-57378 ```release-note NONE ``` Co-authored-by: Mattermost Build <build@mattermost.com>

  • Devin Binnie (21 Mar 24)

    Revert front-end changes for #25715 (#26553) * Revert front-end changes for #25715 * Fix lint * Fix again --------- Co-authored-by: Mattermost Build <build@mattermost.com>

  • Harshil Sharma (21 Mar 24)

    User limit enforcement (#26511) * Added hard limits when creating user * Added check to user activation * Added missing check for licensed servers * Fix i18n * Fixed style order * Added a separate hard limit along with existing 10k user soft limit * For CI * Fixing flaky test, hopefully * Added tests

  • Ben Schumacher (21 Mar 24)

    [MM-56853] Add mmctl shell completion for commands (#26214)

  • Christopher Poile (21 Mar 24)

    MM-55320 - Limit length of browser user agent version; ratelimit the /sessions endpoint (#25900) * add ratelimit to /sessions; cap userAgent version length; tests * add MaxSessionsLimit; remove oldest session first; tests * can't use slices in 1.20; improve test * nits * add GetLRUSessions; move limiting to CreateSession; remove rate limiting * use queryBuilder * mysql needs a limit when using offset * update i18n * refactor into limitNumberOfSessions; protect createSessionForUserAccessToken * add comment to GetLRUSessions * add limit to oauth path; PR comments

  • Alejandro García Montoro (21 Mar 24)

    MM-57344: Improve ElasticSearch indexing query performance (#26517) * Use a row constructor comparison to avoid a filter The original query had a WHERE condition that looked like: (x > a) OR (x = a AND y < b) This commit changes it to a compound comparison that, given the lexicographical order it uses, is semantically the same: (x, y) > (a, b) This makes the plan in Postgres use an Index Cond instead of a Filter, having two main performance improvements: 1. The query's time is more or less constant, not increasing every time this query is executed. This is important because the query is executed repeatedly until all posts are indexed. 2. The query's time is much shorter: while the original query eventually takes 30s, hitting the timeout, the new one takes ~30ms. Notice the difference in the plans below: - the original query uses a `Filter` step, while the new one uses an `IndexCond` + `Filter` step. - the original query has a shared hit count of 40557115 (109GiB), while the new one has a shared hit count of 13951 (109MiBA). This does not show exactly how much data is read from disk, given it's a nested loop node, but it gives us an idea of the amount of data processed in the server. Original plan: agnivaltdb=> EXPLAIN (ANALYZE, BUFFERS) SELECT Posts.*, Channels.TeamId FROM Posts LEFT JOIN Channels ON Posts.ChannelId = Channels.Id WHERE Posts.CreateAt > '1687424888405' OR (Posts.CreateAt = '1687424888405' AND Posts.Id > 'tpomh9yu1tffmdp6dopobwuc9h') ORDER BY Posts.CreateAt ASC, Posts.Id ASC LIMIT 10000; QUERY PLAN ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Limit (cost=1.22..2287.94 rows=10000 width=464) (actual time=23921.236..23954.229 rows=10000 loops=1) Buffers: shared hit=40557115 -> Incremental Sort (cost=1.22..13998881.93 rows=61217938 width=464) (actual time=23921.235..23953.205 rows=10000 loops=1) Sort Key: posts.createat, posts.id Presorted Key: posts.createat Full-sort Groups: 311 Sort Method: quicksort Average Memory: 45kB Peak Memory: 45kB Buffers: shared hit=40557115 -> Nested Loop Left Join (cost=1.00..11421751.31 rows=61217938 width=464) (actual time=23920.970..23947.067 rows=10001 loops=1) Buffers: shared hit=40557115 -> Index Scan using idx_posts_create_at on posts (cost=0.57..9889434.54 rows=61217938 width=461) (actual time=23920.930..23931.063 rows=10001 loops=1) Filter: ((createat > '1687424888405'::bigint) OR ((createat = '1687424888405'::bigint) AND ((id)::text > 'tpomh9yu1tffmdp6dopobwuc9h'::text))) Rows Removed by Filter: 40920000 Buffers: shared hit=40553119 -> Memoize (cost=0.43..0.70 rows=1 width=30) (actual time=0.001..0.001 rows=1 loops=10001) Cache Key: posts.channelid Cache Mode: logical Hits: 9002 Misses: 999 Evictions: 0 Overflows: 0 Memory Usage: 151kB Buffers: shared hit=3996 -> Index Scan using channels_pkey on channels (cost=0.42..0.69 rows=1 width=30) (actual time=0.007..0.007 rows=1 loops=999) Index Cond: ((id)::text = (posts.channelid)::text) Buffers: shared hit=3996 Planning: Buffers: shared hit=112 Planning Time: 0.501 ms Execution Time: 23954.974 ms (25 rows) New plan: agnivaltdb=> EXPLAIN (ANALYZE, BUFFERS) SELECT Posts.*, Channels.TeamId FROM Posts LEFT JOIN Channels ON Posts.ChannelId = Channels.Id WHERE (Posts.CreateAt, Posts.Id) > ('1687424888405', 'tpomh9yu1tffmdp6dopobwuc9h') ORDER BY Posts.CreateAt ASC, Posts.Id ASC LIMIT 10000; QUERY PLAN ----------------------------------------------------------------------------------------------------------------------------------------------------------------- Limit (cost=1.15..1666.83 rows=10000 width=464) (actual time=0.366..34.053 rows=10000 loops=1) Buffers: shared hit=13951 -> Incremental Sort (cost=1.15..10196977.36 rows=61217938 width=464) (actual time=0.365..33.031 rows=10000 loops=1) Sort Key: posts.createat, posts.id Presorted Key: posts.createat Full-sort Groups: 311 Sort Method: quicksort Average Memory: 45kB Peak Memory: 45kB Buffers: shared hit=13951 -> Nested Loop Left Join (cost=1.00..7619846.74 rows=61217938 width=464) (actual time=0.059..26.840 rows=10001 loops=1) Buffers: shared hit=13951 -> Index Scan using idx_posts_create_at on posts (cost=0.57..6087529.97 rows=61217938 width=461) (actual time=0.040..10.548 rows=10001 loops=1) Index Cond: (createat >= '1687424888405'::bigint) Filter: (ROW(createat, (id)::text) > ROW('1687424888405'::bigint, 'tpomh9yu1tffmdp6dopobwuc9h'::text)) Rows Removed by Filter: 2 Buffers: shared hit=9955 -> Memoize (cost=0.43..0.70 rows=1 width=30) (actual time=0.001..0.001 rows=1 loops=10001) Cache Key: posts.channelid Cache Mode: logical Hits: 9002 Misses: 999 Evictions: 0 Overflows: 0 Memory Usage: 151kB Buffers: shared hit=3996 -> Index Scan using channels_pkey on channels (cost=0.42..0.69 rows=1 width=30) (actual time=0.007..0.007 rows=1 loops=999) Index Cond: ((id)::text = (posts.channelid)::text) Buffers: shared hit=3996 Planning: Buffers: shared hit=112 Planning Time: 0.471 ms Execution Time: 34.716 ms (26 rows) * Go back to the old query for MySQL As one could expect, the two databases have completely opposite behaviours, and for MySQL, the old query is significantly faster than the new one, exactly for the same reason than in Postgres, but the other way around: the old query uses an Index range scan while the new one would use a Filter. Old query (0.18s): mysql> EXPLAIN ANALYZE SELECT Posts.*, Channels.TeamId FROM Posts USE INDEX(idx_posts_create_at_id) LEFT JOIN Channels ON Posts.ChannelId = Channels.Id WHERE Posts.CreateAt > 1557752415221 OR (Posts.CreateAt = 1557752415221 AND Posts.Id > 'ad59ire57tfwmjr5r8xqxc75qw') ORDER BY Posts.CreateAt ASC, Posts.Id ASC LIMIT 10000; -------------- EXPLAIN ANALYZE SELECT Posts.*, Channels.TeamId FROM Posts USE INDEX(idx_posts_create_at_id) LEFT JOIN Channels ON Posts.ChannelId = Channels.Id WHERE Posts.CreateAt > 1557752415221 OR (Posts.CreateAt = 1557752415221 AND Posts.Id > 'ad59ire57tfwmjr5r8xqxc75qw') ORDER BY Posts.CreateAt ASC, Posts.Id ASC LIMIT 10000 -------------- +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | EXPLAIN | +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | -> Limit: 10000 row(s) (cost=7472068.91 rows=10000) (actual time=0.063..164.174 rows=10000 loops=1) -> Nested loop left join (cost=7472068.91 rows=5559093) (actual time=0.062..163.450 rows=10000 loops=1) -> Index range scan on Posts using idx_posts_create_at_id over (CreateAt = 1557752415221 AND 'ad59ire57tfwmjr5r8xqxc75qw' < Id) OR (1557752415221 < CreateAt), with index condition: ((Posts.CreateAt > 1557752415221) or ((Posts.CreateAt = 1557752415221) and (Posts.Id > 'ad59ire57tfwmjr5r8xqxc75qw'))) (cost=1357066.29 rows=5559093) (actual time=0.043..97.358 rows=10000 loops=1) -> Single-row index lookup on Channels using PRIMARY (Id=Posts.ChannelId) (cost=1.00 rows=1) (actual time=0.006..0.006 rows=1 loops=10000) | +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.18 sec) New query (5s): mysql> EXPLAIN ANALYZE SELECT Posts.*, Channels.TeamId FROM Posts USE INDEX(idx_posts_create_at_id) LEFT JOIN Channels ON Posts.ChannelId = Channels.Id WHERE (Posts.CreateAt, Posts.Id) > (1557752415221, 'ad 59ire57tfwmjr5r8xqxc75qw') ORDER BY Posts.CreateAt ASC, Posts.Id ASC LIMIT 10000; -------------- EXPLAIN ANALYZE SELECT Posts.*, Channels.TeamId FROM Posts USE INDEX(idx_posts_create_at_id) LEFT JOIN Channels ON Posts.ChannelId = Channels.Id WHERE (Posts.CreateAt, Posts.Id) > (1557752415221, 'ad59ire57tfwmjr5r8xqxc75qw') ORDER BY Posts.CreateAt ASC, Posts.Id ASC LIMIT 10000 -------------- +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | EXPLAIN | +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | -> Limit: 10000 row(s) (cost=11119405.48 rows=10000) (actual time=5295.106..5455.285 rows=10000 loops=1) -> Nested loop left join (cost=11119405.48 rows=10000) (actual time=5295.105..5454.572 rows=10000 loops=1) -> Filter: ((Posts.CreateAt,Posts.Id) > (1557752415221,'ad59ire57tfwmjr5r8xqxc75qw')) (cost=221.48 rows=10000) (actual time=5295.078..5388.668 rows=10000 loops=1) -> Index scan on Posts using idx_posts_create_at_id (cost=221.48 rows=10000) (actual time=0.055..5314.753 rows=600000 loops=1) -> Single-row index lookup on Channels using PRIMARY (Id=Posts.ChannelId) (cost=1.00 rows=1) (actual time=0.006..0.006 rows=1 loops=10000) | +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (5.46 sec) ``` * Add comment explaining the difference between DBs --------- Co-authored-by: Mattermost Build <build@mattermost.com>

  • Harshil Sharma (21 Mar 24)

    Passed actual channel data to action instead of HTTP response (#26315) * Passed actual channel data to action instead of HTTP response * Fixed type * Fixed type

  • M-ZubairAhmed (21 Mar 24)

    [MM-57081] Spacing, font and cutoff issues on Channel notifications preferences modal (#26478)

  • Matthew Birtch (21 Mar 24)

    MM-28014 Improve Channel Intros (#26413) * added SVGs for channel intros and initial changes to styles and layout * cleaned up svgs, made theme use theme colors * updated action buttons in channel intro * adding mobile view changes * fixed lint issues * fixed test issues * fixed test and i18n issues * updates to action button styles and reworked grouping of buttons * updated off-topic and town square intro to remove the add members button * updated default add members text and groups text * fixed lint issue on action button css * imported action button in module scss instead * fixes from code review * changed avatar tokens not to be so custom * fixed type issue with avatar component * fixed single quote issue with tests * Revert "changed avatar tokens not to be so custom" This reverts commit 700f172f0d537b5454d85c5fad5e9aa3f76c26b3. * Revert "fixed type issue with avatar component" This reverts commit 5ad1092ba49a10c11ab78247aa5c231e24ed722a. * fixed avatar types and order of sizes

Mattermost Website

Website

Redirects

Redirects to https://mattermost.com/?&redirect_source=mm-org

Security Checks

2 security checks failed (64 passed)

  • Empty Page Content
  • External Redirect Detected

Server Details

  • IP Address 104.18.10.136
  • Location San Francisco, California, United States of America, NA
  • ISP CloudFlare Inc.
  • ASN AS13335

Associated Countries

  • US

Saftey Score

Website marked as safe

100%

Blacklist Check

mattermost.org was found on 0 blacklists

  • ThreatLog
  • OpenPhish
  • PhishTank
  • Phishing.Database
  • PhishStats
  • URLhaus
  • RPiList Not Serious
  • AntiSocial Blacklist
  • PhishFeed
  • NABP Not Recommended Sites
  • Spam404
  • CRDF
  • Artists Against 419
  • CERT Polska
  • PetScams
  • Suspicious Hosting IP
  • Phishunt
  • CoinBlockerLists
  • MetaMask EthPhishing
  • EtherScamDB
  • EtherAddressLookup
  • ViriBack C2 Tracker
  • Bambenek Consulting
  • Badbitcoin
  • SecureReload Phishing List
  • Fake Website Buster
  • TweetFeed
  • CryptoScamDB
  • StopGunScams
  • ThreatFox
  • PhishFort

Website Preview

Mattermost Android App

Update Info

  • App Mattermost
  • Creation Date 15 Sept 18
  • Last Updated 09 Dec 23
  • Current Version 1.11.0
  • Creator Mattermost
  • Downloads 50,000+ downloads

Trackers

  • Sentry

Permissions

  • Internet
  • System Alert Window
  • Wake Lock
  • C2d Message
  • Vibrate
  • Receive Boot Completed
  • Camera
  • Write External Storage
  • Read External Storage
  • Receive
  • Send
  • Access Network State
  • Use Fingerprint
  • Read
  • Write
  • Read Settings
  • Update Shortcut
  • Broadcast Badge
  • Provider Insert Badge
  • Update Count
  • Update Badge
  • Change Badge
  • Read Settings
  • Write Settings
  • Read App Badge
  • Read Settings
  • Write Settings
  • Badge Count Read
  • Badge Count Write

Mattermost iOS App

App Info

Mattermost

Requires Mattermost Server v8.1.0+. Older servers may not be able to connect or have unexpected behavior. ------- Mattermost is an open source platform for secure collaboration across the entire software development lifecycle. - Keep all of your team communications in one place. - Orchestrate work across your tools and teams. - Plan projects and hit milestones. - Unite your entire technology stack through a single point of collaboration. - Meet the strictest security, privacy, and compliance requirements. To use this app, you need a URL for a Mattermost server. ------- Deploy your own server: https://docs.mattermost.com/guides/deployment.html Terms of Service: https://mattermost.com/terms-of-service/ Contribute to the project: https://github.com/mattermost/mattermost-mobile

Rating

Rated 4.67 out of 5 stars by 3,347 users

Version Info

  • Current Version v2.14.0
  • Last Updated 16 Mar 24
  • First Released 10 Jul 17
  • Minimum iOS Version 12.4
  • Device Models Supported 93

App Details

  • IPA Size 70.45 Mb
  • Price Free (USD)
  • Age Advisory 4+
  • Supported Languages 21
  • Developer Mattermost, Inc.
  • Bundle ID com.mattermost.rn

Screenshots

Mattermost Reviews

More Team Collaboration

  • Easy-to-deploy, self-hosted team collaboration platform with stable, feature-rich cross-platform client apps. The UI is fast, good looking and intuitive, so very little technical experience is needed for users of the platform. Rocket.Chat's feature set is similar to Slack's, making it a good replacement for any team looking to have greater control over their data.

  • Secure group communications, with the option to be used over Tor or I2P. Fast intuitive group and 1-to-1 chats with text and rich media using decentralized chat rooms, with a mail feature for delivering messages to offline contacts. A channels feature makes it possible for members of different teams to stay up-to-date with each other, and to share files. Also includes built-in forums, link aggregations, file sharing and voice and video calling. RetroShare is a bit more complex to use than some alternatives, and the UI is quite retro, so may not be appropriate for a non-technical team.

  • Privacy-focused messenger using the Matrix protocol. The Element client allows for group chat rooms, media sharing voice and video group calls.

  • An IRC-based solution is another option, being decentralized there is no point of failure, and it's easy to self-host. However it's important to keep security in mind while configuring your IRC instance and ensure that channels are properly encrypted - IRC tends to be better for open communications. There's a variety of clients to choose from - popular options include: The Longe (Web-based), HexChat (Linux), Pidgin (Linux), WeeChat (Linux, terminal-based), IceChat (Windows), XChat Aqua (MacOS), Palaver (iOS) and Revolution (Android).

About the Data: Mattermost

API

You can access Mattermost's data programmatically via our API. Simply make a GET request to:

https://api.awesome-privacy.xyz/communication/team-collaboration/mattermost

The REST API is free, no-auth and CORS-enabled. To learn more, view the Swagger Docs or read the API Usage Guide.

About the Data

Beyond the user-submitted YAML you see above, we also augment each listing with additional data dynamically fetched from several sources. To learn more about where the rest of data included in this page comes from, and how it is computed, see the About the Data section of our About page.

Share Mattermost

Help your friends compare Team Collaboration, and pick privacy-respecting software and services.
Share Mattermost and Awesome Privacy with your network!

View Team Collaboration (5)