lure

1.4.0 • Public • Published

lure

npm i -g lure
lure --config /path/to/config.json --port 3000 --env production

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

{
  "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
{
  "provider": "slack",
  "id": "varnalab",
  "name": "VarnaLab",
  "token": "[ACCESS_TOKEN]",
}

GitHub

  • Organization: https://github.com/varnalab
  • OAuth Scope: admin:org
{
  "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:

{
  "development": {
    "my-slack-org": {
      "invite": ["my-other-slack-org"]
    },
    "my-other-slack-org": {}
  }
}

Additional Meta Tags

{
  "meta": [
    {"name": "author", "content": "Simeon Velichkov"}
  ]
}
<meta name="author" content="Simeon Velichkov">

Additional Static Files

The /assets prefix is required!

{
  "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:

{
  "path": "/invite"
}

Localization

{
  "strings": [
    "Присъедини се към чат канала на",
    "в Slack!",
    "потребители са активни в момента от",
    "регистрирани",
    "Вземи своята покана сега!",
    "Поканата се изпраща",
    "Провери пощата си!",
    "или",
    "се логни"
  ]
}

Package Sidebar

Install

npm i lure

Weekly Downloads

4

Version

1.4.0

License

Apache-2.0

Last publish

Collaborators

  • simov