{"repo":"ferg1e/comment-castles","free":true,"listed":false,"github":"https://github.com/ferg1e/comment-castles","clone":"git clone https://github.com/ferg1e/comment-castles.git","description":"Lightweight internet forum","language":"JavaScript","stars":74,"topics":["node","postgres","internet-forum","pug","link-aggregator","comment-system","oauth2","reddit-clone","server-side-rendering"],"license":"MIT","category":"databases-storage","readme_excerpt":"Comment Castles Comment Castles is an internet forum project with posts and nested comments. Posts can be assigned to a sub/community and use hashtags. Subs and hashtags are optional. Users can also communicate privately using direct messages. There is a site-wide moderator and each sub has a moderator. There is an instance running at commentcastles.org! Other Features: OAuth 2 JSON API inbox for direct comments you receive help page light mode and dark mode Install Install one of the tagged releases, preferably the most recent. Create a PostgreSQL 11 database and execute all the code in sql/structure.sql . This will create all the database tables, triggers, etc. PostgreSQL 11+ is probably fine. Install Redis. This is only for the session store. Redis versions 2 and 6 worked for us, so most versions are probably fine. Make sure you have Node.js installed. I am using v20.10.0 locally and the live site uses v20.12.1. Run npm install to download all the Node.js dependencies that are listed in package.json . Set the following environment variables: PGHOST : PostgreSQL host (usually localhost ) PGUSER : PostgreSQL username PGDATABASE : PostgreSQL database name PGPASSWORD : PostgreSQL password PGPORT : PostgreSQL port HTTP PORT : Port this app will use REDIS PORT : Redis port SESSION NAME : express-session name SESSION SECRET : express-session secret NODE ENV : built-in node environment flag On Windows you can use a .env and npm start to set the environment variables. Here's a samp","default_branch":null,"files":null,"tree":[],"storefront":"/r/ferg1e","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/ferg1e/comment-castles/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}