add readme with guide
This commit is contained in:
parent
4dd9540430
commit
d6a358446c
1 changed files with 54 additions and 0 deletions
54
README.md
Normal file
54
README.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
# Brainlet
|
||||||
|
Brainlet is a simple chat app. Each category has a text channel associated with it, all messages sent in the text channel are temporary, while in the category itself all posts are permanent.
|
||||||
|
|
||||||
|
|
||||||
|
As its database, it uses Mongo DB.
|
||||||
|
## Self-hosting
|
||||||
|
So you wanna host Brainlet yourself, huh?
|
||||||
|
|
||||||
|
Firstly, you're gonna need a MongoDB server, I just use Docker for the Mongo server, but you can *try* to not use Docker, though Mongo does not want to standalone on anything outside a perfect debian system or windows, so just use Docker. (if you are on windows, simply install mongo normally, it should work nicely)
|
||||||
|
|
||||||
|
Let create a Docker container for Mongo!
|
||||||
|
```
|
||||||
|
docker run -it -v mongodata:/data/db -p 27017:27017 --name mongodb -d mongo
|
||||||
|
```
|
||||||
|
This should automatically run it, however, next time you need it you gotta run:
|
||||||
|
```
|
||||||
|
docker start mongodb
|
||||||
|
```
|
||||||
|
Stopping it is as simple as:
|
||||||
|
```
|
||||||
|
docker stop mongodb
|
||||||
|
```
|
||||||
|
|
||||||
|
Now that we have a Mongo server set up, let's actually begin to set up the Brainlet server.
|
||||||
|
|
||||||
|
***NOTE***: You need nodejs and npm installed in order to proceed! I recommend using node 12.x, but anything above that will probably work.
|
||||||
|
|
||||||
|
|
||||||
|
Once you have installed node, clone the repo and then cd into it.
|
||||||
|
Then, run the following command:
|
||||||
|
```
|
||||||
|
npm i
|
||||||
|
```
|
||||||
|
This will install all of the node modules.
|
||||||
|
|
||||||
|
Then, run:
|
||||||
|
```
|
||||||
|
cp secret.js.template secret.js
|
||||||
|
```
|
||||||
|
This will create a new secret.js based on that template.
|
||||||
|
|
||||||
|
***IMPORTANT***: Open secret.js with your favourite editor, and set the jwtPrivateKey variable to a random string of characters, preferably generated from /dev/random or using node's own generation thing.
|
||||||
|
|
||||||
|
|
||||||
|
***NOTE***: You can edit config.js to tweak some of the settings. You might wanna do that, especially if you are planning to run it on a domain. (setting the address variable)
|
||||||
|
|
||||||
|
|
||||||
|
### You should now be ready to go!
|
||||||
|
Just run Brainlet with the command below:
|
||||||
|
```
|
||||||
|
node index.js
|
||||||
|
```
|
||||||
|
|
||||||
|
Good luck!
|
Reference in a new issue