hardlounge/README.md

172 lines
3.2 KiB
Markdown
Raw Normal View History

2014-08-02 12:13:58 +00:00
# Shout [![](https://badge.fury.io/js/shout.png)](https://www.npmjs.org/package/shout)
2014-07-20 23:14:36 +00:00
2014-08-18 12:50:12 +00:00
__What is it?__
Shout is a web IRC client that you host on your own server.
__What features does it have?__
- Multiple user support
- Stays connected even when you close the browser
- Connect from multiple devices at once
- Responsive layout — works well on your smartphone
2014-08-18 12:55:27 +00:00
- _.. and more!_
2014-08-18 12:50:12 +00:00
2014-08-18 12:55:27 +00:00
__Ok, you caught my attention. I want to try it!__
Here's a Shout server running in public mode, which allows for anonymous connections:
2014-08-18 12:50:12 +00:00
2014-09-09 23:00:52 +00:00
### [Try the Demo](http://shout-irc.com:9000/)
2014-07-20 23:14:36 +00:00
2014-09-13 22:07:10 +00:00
_Temporarily down. Moving the server._
2014-07-20 23:14:36 +00:00
## Install
2014-08-13 01:27:53 +00:00
```
sudo npm install -g shout
```
2014-07-20 23:14:36 +00:00
2014-09-13 21:36:02 +00:00
### Experimental Heroku Deployment
2014-09-13 18:36:56 +00:00
2014-09-13 21:36:02 +00:00
[![Deploy](https://www.herokucdn.com/deploy/button.png)](https://heroku.com/deploy)
2014-09-13 18:36:56 +00:00
Please note, that this will result in a public Shout instance. In order to make it private
2014-09-13 21:36:02 +00:00
and to register users, you need to follow these steps:
2014-09-13 18:36:56 +00:00
```
git clone git@heroku.com:<your-app>.git
cd your-app
npm install
vim config.js
# set public to false
# set home to __dirname
git add config.js
git commit -m "Make shout private and use repo dir as shout home"
node src/command-line/index.js add <username>
git add -f users/<username>
git commit -m "Add user <username>"
git push heroku master
```
2014-09-09 23:00:52 +00:00
2014-08-13 01:27:53 +00:00
## Usage
2014-07-20 23:14:36 +00:00
2014-08-13 01:27:53 +00:00
When the install is complete, go ahead and start the server:
2014-07-20 23:14:36 +00:00
2014-08-13 01:27:53 +00:00
```
2014-08-17 15:40:28 +00:00
shout
```
For more information:
2014-08-19 01:53:17 +00:00
2014-08-17 15:40:28 +00:00
```
shout --help
2014-08-13 01:27:53 +00:00
```
2014-07-20 23:14:36 +00:00
2014-08-17 15:17:18 +00:00
## Screenshot
2014-07-20 23:14:36 +00:00
2014-08-17 15:40:28 +00:00
![](https://raw.github.com/erming/shout/master/screenshots/shout.png)
## Configuration
2014-08-19 01:53:17 +00:00
Open the `config.json` file by running:
```
shout config
```
The settings:
2014-08-17 15:40:28 +00:00
__port__
The default port to be used.
You can override this by running `shout --port 80`
__public__
Set to either `true|false`.
When set to `false`, a login will be required for connecting users.
2014-07-20 23:14:36 +00:00
2014-08-19 01:53:17 +00:00
## User Management
Go ahead and run `shout --help`:
```
2014-09-11 21:01:53 +00:00
$ shout --help
2014-09-11 21:01:53 +00:00
Usage: shout [options] [command]
2014-09-11 21:01:53 +00:00
Commands:
2014-08-25 10:35:19 +00:00
2014-09-11 21:01:53 +00:00
start
Start the server
config
Edit config: '/usr/lib/node_modules/shout/config.json'
list
List all existing users
add <name>
Add a new user
remove <name>
Remove an existing user
2014-09-11 21:02:57 +00:00
reset <name>
Reset user password
2014-09-11 21:01:53 +00:00
edit <name>
Edit user: '/home/erming/.shout/users/<name>/user.json'
Options:
-h, --help output usage information
-h, --host <ip> host
-p, --port <port> port
```
Pretty simple, huh?
If you want to edit users manually, see `users/example/user.json`.
## Custom paths
You can define Shout's file storage path via the following options:
- Add an entry called `home` to the `config.json` file.
- Set the environment variable `SHOUT_HOME` before calling the shout executable.
- Use the default of `$HOME/.shout`.
2014-08-17 15:40:28 +00:00
## Commands
2014-07-20 23:14:36 +00:00
These are the commands currently implemented:
- [x] /close
- [x] /connect
- [x] /deop
- [x] /devoice
- [x] /disconnect
- [x] /invite
- [x] /join
- [x] /kick
- [x] /leave
- [x] /me
- [x] /mode
- [x] /msg
- [x] /nick
- [x] /notice
- [x] /op
- [x] /part
- [x] /query
- [x] /quit
2014-08-25 10:35:19 +00:00
- [x] /quote
2014-07-20 23:14:36 +00:00
- [x] /raw
- [x] /say
- [x] /send
- [x] /server
- [x] /slap
- [x] /topic
- [x] /voice
- [x] /whois
## License
Available under [the MIT license](http://mths.be/mit).