Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/simov/lure
Lure people to your public organization
https://github.com/simov/lure
github slack
Last synced: 16 days ago
JSON representation
Lure people to your public organization
- Host: GitHub
- URL: https://github.com/simov/lure
- Owner: simov
- License: apache-2.0
- Created: 2017-04-12T18:43:19.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2017-12-18T12:12:50.000Z (about 7 years ago)
- Last Synced: 2024-11-06T19:54:39.614Z (2 months ago)
- Topics: github, slack
- Language: JavaScript
- Size: 45.9 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# lure
```bash
npm i -g lure
lure --config /path/to/config.json --port 3000 --env production
```# config.json
```json
{
"development": {
"my-org": {
"provider": "slack or github",
"id": "[slack org subdomain or github org id]",
"name": "[readable name of your org]",
"token": "[OAuth access token]",
"path": "[path prefix for all routes]",
"invite": ["additional config keys to invite"],
"meta": ["additional meta tags to embed"],
"static": {
"root": "/absolute/path/to/assets",
"favicon": "/assets/favicon.ico",
"logo": "/assets/logo.png",
"css": ["/assets/custom.css"],
"js": ["/assets/custom.js"]
},
"strings": [
"Join",
"on Slack!",
"users online now of",
"registered",
"Get my Invite",
"Please wait",
"Check your email!",
"or",
"sign in"
]
}
}
}
```---
# Serve Multiple Invitation Screens
```json
{
"development": {
"my-slack-org": {},
"my-other-slack-org": {},
"my-github-org": {}
}
}
```- `http://localhost:3000` serves _my-slack-org_
- `http://localhost:3000/my-slack-org` serves _my-slack-org_
- `http://localhost:3000/my-other-slack-org` serves _my-other-slack-org_
- `http://localhost:3000/my-github-org` serves _my-github-org_---
# Organization
## Slack
- Organization: `https://varnalab.slack.com`
- OAuth Scope: `admin````json
{
"provider": "slack",
"id": "varnalab",
"name": "VarnaLab",
"token": "[ACCESS_TOKEN]",
}
```## GitHub
- Organization: `https://github.com/varnalab`
- OAuth Scope: `admin:org````json
{
"provider": "github",
"id": "varnalab",
"name": "VarnaLab",
"token": "[ACCESS_TOKEN]",
}
```---
# Send Multiple Invitations
Invitation sent from `my-slack-org` will result in sending an invitation to **both** `my-slack-org` and `my-other-slack-org`:
```json
{
"development": {
"my-slack-org": {
"invite": ["my-other-slack-org"]
},
"my-other-slack-org": {}
}
}
```---
# Additional Meta Tags
```json
{
"meta": [
{"name": "author", "content": "Simeon Velichkov"}
]
}
``````html
```
---
# Additional Static Files
The `/assets` prefix is **required**!
```json
{
"static": {
"root": "/absolute/path/to/assets",
"favicon": "/assets/favicon.ico",
"logo": "/assets/logo.png",
"css": [
"/assets/custom.css"
],
"js": [
"/assets/custom.js"
]
}
}
```---
# Path Prefix
Prefix all invitation routes:
```json
{
"path": "/invite"
}
```---
# Localization
```json
{
"strings": [
"Присъедини се към чат канала на",
"в Slack!",
"потребители са активни в момента от",
"регистрирани",
"Вземи своята покана сега!",
"Поканата се изпраща",
"Провери пощата си!",
"или",
"се логни"
]
}
```