Real-time imageboard w/ hacks
https://doushio.com/moe
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Avril
3e31b30338
|
3 years ago | |
---|---|---|
.Trash-1000 | 6 years ago | |
admin | 6 years ago | |
archive | 6 years ago | |
assets/kana | 4 years ago | |
client | 4 years ago | |
curfew | 6 years ago | |
docs | 6 years ago | |
imager | 3 years ago | |
lib | 6 years ago | |
lua | 6 years ago | |
report | 6 years ago | |
server | 3 years ago | |
tmpl | 6 years ago | |
tripcode | 4 years ago | |
upkeep | 6 years ago | |
www | 3 years ago | |
.gitignore | 4 years ago | |
LICENSE | 6 years ago | |
Makefile | 4 years ago | |
README.md | 6 years ago | |
TODO | 6 years ago | |
ass | 4 years ago | |
builder.js | 6 years ago | |
common.js | 3 years ago | |
config.js.example | 4 years ago | |
db.js | 6 years ago | |
deps.js | 4 years ago | |
etc.js | 6 years ago | |
hooks.js | 6 years ago | |
hot.js.example | 4 years ago | |
make_client.js | 6 years ago | |
package.json | 4 years ago | |
pipeline.js | 6 years ago | |
tail.js | 6 years ago | |
tripcode.js | 4 years ago |
README.md
Real-time imageboard. MIT licensed.
Setup:
- Install dependencies listed below
- Sign up for reCAPTCHA
- Create a GitHub Application (callback URL = site URL + /login)
- Copy config.js.example to config.js and configure
- Copy hot.js.example to hot.js and configure
- Copy imager/config.js.example to imager/config.js and configure
- Copy report/config.js.example to report/config.js and configure
- You might need to run
npm install -g node-gyp
- Run
npm install
to install npm deps and compile a few helpers - Run
node builder.js
to run an auto-reloading development server
Production:
- Have your webserver serve www/ (or wherever you've moved src, thumb, etc.)
- Configure
imager.config.MEDIA_URL
appropriately - Then turn off
SERVE_STATIC_FILES
andSERVE_IMAGES
- Configure
- If you're behind Cloudflare turn on
CLOUDFLARE
- Or if you're behind any reverse proxy (nginx etc) turn on
TRUST_X_FORWARDED_FOR
- Or if you're behind any reverse proxy (nginx etc) turn on
- Run
node server/server.js
for just the server - You can update client code & hot.js on-the-fly with
node server/kill.js
- For nginx hosting/reverse proxying, refer to docs/nginx.conf.example
- For a sample init script, refer to docs/doushio.initscript.example
- config.DAEMON support is old and broken, PRs welcome
Dependencies:
- ImageMagick
- libpng
- node.js + npm
- redis
- ffmpeg 2.2+ if supporting WebM
- jhead and jpegtran optionally, for EXIF autorotation
Optional npm deps for various features:
daemon(broken currently)- icecast now-playing banners: node-expat
- send (if you want to serve static files directly from the node.js process; useful in debug mode also)
Standalone upkeep scripts:
- archive/daemon.js - moves old threads to the archive
- upkeep/backup.js - uploads rdb to S3
- upkeep/clean.js - deletes archived images
- upkeep/radio.js - icecast2 server integration