All Projects → nektro → mantle

nektro / mantle

Licence: other
📒 Easy and effective communication for any team or community.

Programming Languages

go
31211 projects - #10 most used programming language
javascript
184084 projects - #8 most used programming language
SCSS
7915 projects
Handlebars
879 projects
CSS
56736 projects
HTML
75241 projects

Projects that are alternatives of or similar to mantle

entries.pub
WIP IndieWeb blog engine
Stars: ✭ 13 (-56.67%)
Mutual labels:  indieweb
delta
A modern file uploader + URL shortner written in node for your private cloud. low memory overhead + secure
Stars: ✭ 103 (+243.33%)
Mutual labels:  self-hosted
stor
[DEPRECATED] STOR provides a JSON database with the power of HTTP requests 🚀
Stars: ✭ 18 (-40%)
Mutual labels:  self-hosted
zusam
Private groups to share messages, photos, videos, links with friends and family.
Stars: ✭ 79 (+163.33%)
Mutual labels:  self-hosted
fastapi-azure-auth
Easy and secure implementation of Azure AD for your FastAPI APIs 🔒 B2C, single- and multi-tenant support.
Stars: ✭ 174 (+480%)
Mutual labels:  oauth2
instagram-oauth-nodejs-server
Node.js server for Intagram-API OAuth purpose.
Stars: ✭ 12 (-60%)
Mutual labels:  oauth2
WorkGroup
Self-Hosted private Social Media-Intranet for Companies.
Stars: ✭ 21 (-30%)
Mutual labels:  self-hosted
OAuthLogin.AspNetCore
第三方平台联合登陆(facebook、微信、微博、QQ、Kakao)
Stars: ✭ 43 (+43.33%)
Mutual labels:  oauth2
api
Mirror of vikunja from https://code.vikunja.io/api
Stars: ✭ 119 (+296.67%)
Mutual labels:  self-hosted
GoogleSignIn-iOS
Enables iOS and macOS apps to sign in with Google.
Stars: ✭ 198 (+560%)
Mutual labels:  oauth2
Simpler
Simpler是一款轻量级的第三方微博应用,具有微博的基础功能,兼有外观优雅,运行流畅,内存占用低,省电省流量等特点。
Stars: ✭ 27 (-10%)
Mutual labels:  oauth2
friendica
Friendica Communications Platform
Stars: ✭ 1,048 (+3393.33%)
Mutual labels:  self-hosted
wiresteward
Wireguard peer manager
Stars: ✭ 50 (+66.67%)
Mutual labels:  oauth2
psd2
API client for banks supporting PSD2 APIs with OAuth2 authentication.
Stars: ✭ 26 (-13.33%)
Mutual labels:  oauth2
OAuthLogin
第三方平台联合登陆(facebook、微信、微博、QQ、Kakao)
Stars: ✭ 57 (+90%)
Mutual labels:  oauth2
sample-oauth2-client
Sample OAuth2 client using the GitHub API
Stars: ✭ 69 (+130%)
Mutual labels:  oauth2
cordova-spotify-oauth
🔐 Easy Spotify authentication for Cordova / PhoneGap apps
Stars: ✭ 15 (-50%)
Mutual labels:  oauth2
audiobookshelf
Self-hosted audiobook and podcast server
Stars: ✭ 1,316 (+4286.67%)
Mutual labels:  self-hosted
portal
A hub-and-spoke platform for organizations to effectively manage their operations and data. Uses GSuite.
Stars: ✭ 26 (-13.33%)
Mutual labels:  oauth2
OAuth2-Go
OAuth2 sample app using Go
Stars: ✭ 19 (-36.67%)
Mutual labels:  oauth2

Mantle

loc license discord circleci release goreportcard codefactor downloads crowdin issuehunt docker_pulls docker_stars

Easy and effective communication is the foundation of any successful team or community. That's where Mantle comes in, providing you the messaging platform that puts you in charge of both the conversation and the data.

Getting Started

These instructions will help you get the project up and running and are required before moving on.

Creating External Auth Credentials

In order to allow users to log in to Mantle, you will need to create an app on your Identity Provider(s) of choice. See the nektro/go.oauth2 docs for more detailed info on this process on where to go and what data you'll need.

Here you can also fill out a picture and description that will be displayed during the authorization of users on your chosen Identity Provider. When prompted for the "Redirect URI" during the app setup process, the URL to use will be http://mantle/callback, replacing mantle with any origins you wish Mantle to be usable from, such as example.com or localhost:800.

Once you have finished the app creation process you should now have a Client ID and Client Secret. These are passed into Mantle through flags as well.

Name Type Default Description
--oauth2-client string none. OAuth2 Client Config in the form `For

The Identity Provider IDs can be found from the table in the nektro/go.oauth2 documentation.

All Flags

      --base string                  The path to mount all listeners on (default "/")
      --config string                 (default "~/.config/mantle/config.json")
      --dbstorage-debug-sql          Enable this flag to print all executed SQL statements.
      --dbstorage-debug-verbose      Enabled this flag to inlcude binded values in logs.
      --jwt-secret string            Private secret to sign and verify JWT auth tokens with. (default "Random")
      --max-member-count int         
      --mysql-database string        
      --mysql-password string        
      --mysql-url string             
      --mysql-user string            
      --oauth2-client stringArray    Custom client config. Pass in the form: for|id|secret
      --oauth2-default-auth string   A default auth to use when multiple appconf's are enabled.
      --port int                     The port to bind the web server to. (default 8000)
      --postgres-database string     
      --postgres-password string     
      --postgres-sslmode string       (default "verify-full")
      --postgres-url string          
      --postgres-user string         
      --redis-url string             
      --skip-translation-fetch       Enable this flag to only read native translation data.
      --theme stringArray            A CLI way to add config themes.

Deployment

Pre-compiled binaries can be obtained from https://github.com/nektro/mantle/releases/latest.

Or you may run Mantle using the official Docker image. Visit https://hub.docker.com/r/nektro/mantle for the full list of tags.

$ docker run -p 80:8000 nektro/mantle

Development

Local development is done with Docker and docker-compose

To launch a local instance, add the OAUTH2_CLIENT_N env var into docker-compose.yml where N is 1, 2, 3, etc with your OAuth2 client info and then run the following and visit http://localhost/.

$ docker-compose up

Built With

Contributing

issues

We listen to issues all the time right here on GitHub. Labels are extensively to show the progress through the fixing process. Question issues are okay but make sure to close the issue when it has been answered! Off-topic and '+1' comments will be deleted. Please use post/comment reactions for this purpose.

Public Instances

Want to try out a live server before installing your own, or get involved in an already existing community? Try these servers below:

Run an instance and want your site here? Contact me below!

Contact

License

AGPL-3.0

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