Skip to content
A KISS tribune powered by java, spring boot and mongodb.
Java JavaScript HTML CSS Dockerfile
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/workflows
docs
src
.gitignore
Dockerfile
Dockerfile.jb3only
LICENSE
README.md
docker-compose.yml
pom.xml

README.md

jb3

jb3 is a KISS tribune powered by java, spring boot and mongodb.

Features

  • archives
  • fortunes
  • bots
  • last id
  • XPost
  • X-Post-Id
  • rooms

Demo

A live demo is accessible here.

Coincoin configuration

You can also configure your favorite coincoin using these parameters:

Advanced coincoin configuration

Rooms

Rooms are like IRC channel. From a coincoin, they can be seen as independent tribune.

Gateway rooms

Gateway are used to receive and post on external tribunes or other chat systems.

Implemented gateways:

  • dlfp
  • euromussels
  • gabuzomeu
  • moules
  • ototu
  • sveetch

Run demo using docker

A docker image exists, see Package.

Using provided docker-compose file, simply run the following command:

docker-compose up -d

It uses github docker registry. You may need to authenticate before, in order to pull image.

docker login -u USERNAME -p TOKEN docker.pkg.github.com

See Github help for more details

Then access to the jb3 application using a web browser on http://localhost:8080 This will runs two docker container, one for jb3 and one for mongodb. Mongodb data will be stored locally in data folder, allowing to keep it between runs.

How to use

Skill check

Please note that a thorough knowledge of Java web application development and hosting is required.

Requirements

  • OpenJDK 11+
  • Maven 3+
  • mongodb 2+

Build

mvn package

Run locally

Ensure that mongodb is running and listening on 127.0.0.1 then run:

java -jar target/jb3-*.jar

The frontend is now accessible on locahost:8080.

Deploy and hosting on a production server

There is several options to deploy and host jb3. Here is one that requires:

  • a domain name (example: mydomain.me).
  • a web server with http proxy capabilities (example nginx).

Application configuration

Please change the jb3.defaults.room in application.properties file.

Deployment

  1. Build and launch jb3 on the server. If your OS use systemd, check the sample configuration.
  2. Configure your web server to act as reverse proxy on http://localhost:8080. If you are using nginx, check the sample configuration.
You can’t perform that action at this time.