Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rauchg/slackin
Public Slack organizations made easy
https://github.com/rauchg/slackin
Last synced: 1 day ago
JSON representation
Public Slack organizations made easy
- Host: GitHub
- URL: https://github.com/rauchg/slackin
- Owner: rauchg
- License: mit
- Created: 2015-01-26T21:23:41.000Z (about 10 years ago)
- Default Branch: master
- Last Pushed: 2023-10-17T10:33:56.000Z (over 1 year ago)
- Last Synced: 2025-02-11T16:11:44.858Z (8 days ago)
- Language: JavaScript
- Homepage: http://rauchg.com/slackin/
- Size: 415 KB
- Stars: 6,507
- Watchers: 140
- Forks: 1,337
- Open Issues: 170
-
Metadata Files:
- Readme: readme.md
- Changelog: HISTORY.md
- License: license.md
Awesome Lists containing this project
- awesome-list - slackin
README

## Features
- A landing page you can point users to fill in their emails and receive an invite (`https://slack.yourdomain.com`)
- An `` badge to embed on any website that shows connected users in *realtime* with socket.io.
- A SVG badge that works well from static mediums (like GitHub README pages)
- Abuse prevention via [Google reCAPTCHA](https://www.google.com/recaptcha/intro/)## Usage
### Badges
#### Realtime ([demo](https://cldup.com/IaiPnDEAA6.gif))
```html
```
#### SVG ([demo](https://cldup.com/jWUT4QFLnq.png))
```html
![]()
```## API
Loading `slackin` will return a `Function` that creates a `HTTP.Server` instance:
```js
const slackin = require('slackin')slackin.default({
token: 'yourtoken', // required
interval: 1000,
org: 'your-slack-subdomain', // required
path: '/some/path/you/host/slackin/under/', // defaults to '/'
channels: 'channel,channel,...', // for single channel mode
silent: false // suppresses warnings
}).listen(3000)
```This will show response times from Slack and how many online users you have on the console. The returned `http.Server` has an `app` property that is the `express` application that you can define or override routes on.
All the metadata for your organization can be fetched via a JSON HTTP request to `/data`.
## Caught a Bug?
1. [Fork](https://help.github.com/articles/fork-a-repo/) this repository to your own GitHub account and then [clone](https://help.github.com/articles/cloning-a-repository/) it to your local device
2. Uninstall slackin if it's already installed: `npm uninstall -g slack`
3. Link it to the global module directory: `npm link`
4. Transpile the source code and watch for changes: `npm start`Yey! Now can use the `slack` command everywhere.