Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/scrollback/scrollback
Embeddable cross-platform chat for communities
https://github.com/scrollback/scrollback
Last synced: about 1 month ago
JSON representation
Embeddable cross-platform chat for communities
- Host: GitHub
- URL: https://github.com/scrollback/scrollback
- Owner: scrollback
- License: other
- Created: 2013-07-24T10:49:24.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2016-02-22T11:16:42.000Z (almost 9 years ago)
- Last Synced: 2024-08-01T12:35:33.067Z (4 months ago)
- Language: JavaScript
- Size: 55.2 MB
- Stars: 560
- Watchers: 53
- Forks: 149
- Open Issues: 50
-
Metadata Files:
- Readme: README.md
- Changelog: history/history-client.js
- License: LICENSE.md
Awesome Lists containing this project
- awesome-starred - scrollback/scrollback - Embeddable cross-platform chat for communities (others)
README
[![travis status](https://travis-ci.org/scrollback/scrollback.svg?branch=master)](https://travis-ci.org/scrollback/scrollback)
## Scrollback, where communities hang out
Scrollback provides a free-to-use service at [scrollback.io](http://scrollback.io). If you’re planning to run a community chat room, you should [try it](https://scrollback.io/me) out now!
You can even [embed Scrollback room](https://github.com/scrollback/scrollback/wiki/Basic-Usage#embed-scrollback-room) on your webpage/blog.
## Install
### 1. Install dependencies
- Node.js (0.12 or higher)
- Postgres (9.4 or higher)
- Redis
- Gulp (globally)### 2. Create Postgres db and user for scrollback (recommended)
If you skip this step, configure Scrollback to use an existing user and database using the Configure step below.
Sign into `psql` as the administrator account (`postgres` in Linux, the user who installed PostgreSQL in OSX)
```sql
CREATE USER scrollback PASSWORD scrollback;
CREATE DATABASE scrollback;
\c scrollback
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO scrollback;
```### 3. Create scrollback tables
```sh
psql -U scrollback < tools/pg/sbentity.sql
psql -U scrollback < tools/pg/sbcontent.sql
psql -U scrollback < tools/pg/sbnotes.sql
```### 4. Install npm dependencies
```sh
npm install
```### 5. Build the client
```sh
gulp
```
You must rebuild the client every time you change client configuration or modify any of the client code.### 6. Run Scrollback
```sh
node index.js
```
Scrollback will print warnings about newrelic (a performance monitoring service) not being configured and about not being able to connect to the IRC and Threader processes. You can ignore them.If you wish to connect to IRC, run the Scrollback IRC bouncer as root:
```sh
node ircClient/server.js
```
Running as root is necessary because it needs to listen on port 113 (identd) which is required by some IRC networks.### Configure (optional)
Creating `server-config.js` and `client-config.js` files where you can override values from [`server-config-defaults.js`](https://github.com/scrollback/scrollback/blob/master/server-config-defaults.js) and [`client-config-defaults.js`](https://github.com/scrollback/scrollback/blob/master/client-config-defaults.js). Example:
```
module.exports = {
core: {
name: "scrollback"
}
}
```## Contribute to Scrollback
We maintain a [wiki](https://github.com/scrollback/scrollback/wiki) that explains Scrollback architecture. It's a work-in-progress so please let us know if there are gaps in the content. Better yet, feel free to send us a Pull Request to make it better.
## License
Scrollback is licensed under GNU Affero General Public License. For more information see [http://www.gnu.org/licenses/agpl-3.0.html](http://www.gnu.org/licenses/agpl-3.0.html)