From 0663fc1957465f946115c5b41fbf79394d16c652 Mon Sep 17 00:00:00 2001 From: Kai Niebes Date: Thu, 11 Jun 2026 19:25:31 +0200 Subject: [PATCH] Update README --- README.md | 44 ++++++++++++++++++++++++++++++-------------- 1 file changed, 30 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index 8564096..98e47ac 100644 --- a/README.md +++ b/README.md @@ -4,26 +4,42 @@ Kompakkt Logo

-## Prerequisites +## Requirements -- [NodeJS](https://nodejs.org/en/) -- Node Package Manager ([NPM](https://www.npmjs.com/)) -- MongoDB -- Redis +- **[Bun](https://bun.sh/)** - runtime and package manager. `npm` / `yarn` / `pnpm` are **not** supported. +- **[MongoDB](https://www.mongodb.com/)** - primary data store. +- **[Redis](https://redis.io/)** (or a compatible drop-in such as [Dragonfly](https://www.dragonflydb.io/)) - cache layer. +- **[Sonic](https://github.com/valeriansaliou/sonic)** - full-text search backend. +- **[Kompressor](https://github.com/Kompakkt/Kompressor)** - mesh processing backend (3d meshes, gaussian splatting, point clouds, ...). -## Development setup +The Kompakkt configuration for Sonic is available at [`sonic-config.cfg`](https://github.com/Kompakkt/Mono/blob/main/sonic-config.cfg) in the Kompakkt/Mono repository. -In order to setup your own development environment, you have to have [NodeJS](https://nodejs.org/en/) as well as Node Package Manager ([NPM](https://www.npmjs.com/)) installed. +## Development setup -Clone this repository, cd to the project directory and run the following commands: +Clone the repository, then install the dependencies with Bun: -``` -$ git clone https://github.com/Kompakkt/Common.git src/common -$ npm i +```bash +git clone https://github.com/Kompakkt/Server +cd Server +bun install ``` -Ensure that MongoDB and Redis is running then start the server with +Shared code from upstream Kompakkt packages (`@kompakkt/common`) is pulled in automatically as a git-pinned npm dependency. +### Starting the supporting services + +Make sure MongoDB, Redis/Dragonfly, Sonic and Kompressor are running locally (see the `CONFIGURATION_*` environment variables in `src/configuration.ts` for the hostnames, ports and credentials the server expects by default). Also see "Running the full stack" below. + +### Starting the server + +For local development with hot reload: + +```bash +bun run dev ``` -$ npm run start -``` + +The server listens on port **3030** by default. + +## Running the full stack + +This repository only contains the Server. To run Server, Repo and Viewer together (with all required supporting services such as Redis, Sonic, MongoDB and Kompressor), use the [Kompakkt/Mono](https://github.com/Kompakkt/Mono) development environment.