Skip to content

Community Development

zgq edited this page Jul 15, 2026 · 1 revision

Community Development

Use this page to build and debug Chat2DB Community from source. Product users should prefer the Community Quick Start.

Requirements

  • OpenJDK 17
  • Node.js 18 or later
  • Maven 3.8 or later
  • Yarn, using the lockfile committed to the repository

Get the source

git clone https://github.com/OtterMind/Chat2DB.git
cd Chat2DB

The current Community source is organized under:

chat2db-community-client/   Frontend
chat2db-community-server/   Backend, database plugins, and runtime modules

The old chat2db-client and chat2db-server paths do not describe the current Community repository layout.

Start the frontend

cd chat2db-community-client
yarn install --frozen-lockfile
yarn run start:community:hot

The frontend development server uses http://127.0.0.1:8889 by default.

Build and start the backend

Run from the repository root:

mvn -B clean package -Dmaven.test.skip=true -Dchat2db.finalName=chat2db-community \
  -f chat2db-community-server/pom.xml \
  -pl chat2db-community-start -am

./script/security/init-community-encryption-key.sh

java -Dloader.path=chat2db-community-server/chat2db-community-start/target/lib \
  -Dchat2db.gui=false \
  -Dchat2db.runtime.mode=community \
  -Dchat2db.mode=WEB \
  -Dchat2db.network.status=OFFLINE \
  -Dchat2db.community.encryption-key-file="$HOME/.config/chat2db-community/encryption.key" \
  -Dserver.address=127.0.0.1 \
  -Dserver.port=10825 \
  -Dspring.profiles.active=dev \
  -jar chat2db-community-server/chat2db-community-start/target/chat2db-community.jar

A healthy backend responds on http://127.0.0.1:10825.

Build a local image

Choose the version and image tag for the intended build:

./docker/docker-build.sh <version> chat2db/chat2db:<version>

Submit a change

Before opening a pull request, run checks proportional to the change and include:

  • What changed and why
  • The related issue
  • Verification commands and results
  • Screenshots or recordings for UI changes
  • Known limitations

See the repository Contributing Guide and Contributing and Security.

Clone this wiki locally