← All work

A European team AI chat provider

Team AI chat moved onto current open source, every custom feature kept

A European provider of team AI chat ran its admin dashboard and multi-user chat on an outdated open source fork tied to one AI provider. We compared the code before quoting, moved every custom feature first, then built on a current base in the client's own cloud.

B2B SoftwareMulti-model team AI chatAI added to a live product

Base
Outdated open source fork moved to a current release
Kept
Admin dashboard and multi-user live chat
Models
Many providers behind one separate gateway
Runs in
Dev and production in the client's own cloud

The challenge

The product's admin dashboard and multi-user chat sat on an old fork of an open source chat framework. Upstream had moved on, and the product spoke to only one AI provider.

What we did

We compared the fork with upstream before quoting, moved every custom feature onto a current release, took model routing out into its own service and shipped it in the client's cloud.

The outcome

The client kept every custom feature on a base it can keep upgrading, gained a gateway open to more AI providers and got automated deploys to dev and production.

The starting point

The client offers a team AI chat web app built on a fork of an open source chat framework that looks and works much like ChatGPT. Companies use it as one shared AI workspace with an admin dashboard for users, usage, model choice and company settings, and beta testers were already on it.

What had to change

The client's custom features sat on an outdated base while upstream had changed a great deal. The team could not take upstream fixes or new features without porting its own work, and it needed hosting, automated deployment and more models than its one provider.

What could not break

  • Every custom feature survives the move: admin dashboard, multi-user chat, model choice
  • All work stays in the client's own cloud accounts and repository
  • The redesign follows the client's own designers and their files
  • Answers stream to the browser and larger uploads go through in production

The calls we made

We treated it as a migration first and a feature project second, because every new feature added to an outdated fork would make the next upgrade harder.

  1. 01

    Read the code before quoting

    We compared the client's fork against its base and against the latest upstream release, and walked the founder through the changes on video, so he saw the real scope before choosing us.

    Ruled out

    A quote from a feature list alone, which would have hidden how far upstream had moved.

  2. 02

    Migrate first, then add features

    Bringing the custom work onto a current release first meant each new feature was built once, on a base the client can keep upgrading.

    Ruled out

    Adding hosting and new features on the old fork and upgrading later.

  3. 03

    Take model routing out of the app

    Model routing was built into the app and spoke to only one provider, while upstream recommends a separate service. Running the gateway on its own opened the product to many model providers.

    Ruled out

    Keeping the embedded gateway, which tied the product to one provider and worked against upstream.

  4. 04

    On the client's cloud from day one

    The current release ran on the client's own cloud for review before the statement of work was signed, and dev and production followed in the same account.

    Ruled out

    Building on our own servers and moving to the client's cloud at handover.

  5. 05

    Design from the client's own designers

    We sent two quick design directions, then the client chose to keep its own designers, so we built the new front end from their designs instead of a parallel design track.

    Ruled out

    Two design teams working on one interface at the same time.

How the system fits together

chats, settingsdeploysmodel callsroutesfiles, emailsstreamed answersTeam members andadminsChats, usage, model choiceTeam AI chat appCurrent open source base,custom features keptCI/CDAutomated deploys to devand productionModel gatewaySeparate service for modelroutingStorage and emailCloud storage andautomatic emailsAI model providersThe original provider andmore
PeopleClient's existing systemBuilt by DaticsOutside serviceAI modelThe product, its gateway and both environments run in a cloud account the client owns.

What we built

01

The migrated product

The client's fork moved onto a current upstream release with its admin dashboard (user management, usage overview, model selection, company settings) and live multi-user chats intact.

02

Many models, one gateway

Model routing runs as its own service in front of the original provider and others, and a prompt helper suggests better prompts.

03

Workspace features

Cloud storage integrations, an email opt-out in the admin dashboard and an automatic email flow with dynamic templates, triggered by actions and criteria the client defined.

04

Redesign from the client's designs

A new front end built from the client's own designs, clean and minimal and close to ChatGPT, with light and dark modes.

05

Production hosting

Dev and production environments in a cloud account the client owns, set up for streamed answers and larger uploads, with automated deployment.

How it works

Open a chat

Team members work in one shared workspace, alone or in multi-user chats that update live.

Set the rules

The company admin manages users, sees usage and chooses which models the team can use.

Route the request

Each request goes through the separate gateway to a provider the admin allowed.

Stream the answer

The answer streams straight to the browser, so replies appear as they are written.

Follow up by email

The automatic email flow sends messages from dynamic templates, such as usage summaries.

A closer look

What changed

The client came out with every custom feature on a current open source base it can keep upgrading, a gateway that opens the product to more AI providers, and dev and production with automated deploys in its own cloud. The project closed as complete, with documentation as the final handover.

Under the hood

Datics role
AI added to a live product
Model gateway
A separate routing service in front of the original AI provider and others, so adding a model does not mean changing the app.
Live chat
Multi-user chats and answers that stream to the browser as they are written.
Integrations
Cloud storage for files, and automatic emails from dynamic templates.
Deployment
A client-owned cloud account with separate dev and production environments and automated deploys, moved to a European region at the client's request.

Also in the stack

Open source AI chat frameworkSeparate model gatewayMultiple AI model providersClient-owned cloudCI/CD

How it shipped

  1. Code comparison and scope

    We compared the fork with its base and the latest upstream release, walked the founder through the changes and split the work into three milestones.

  2. Migration and core features

    A current release running on the client's cloud for review, then the admin dashboard, multi-user chat, the separate model gateway, prompt help, email and cloud storage.

  3. Redesign and admin updates

    The new front end from the client's designs and updates to the admin dashboard.

  4. Hosting, deploys and email flow

    Dev and production environments, automated deploys and the automatic email flow, followed by operations work such as a move to a European region at the client's request.

In the client's own accounts

We worked in the client's repository and in a cloud account dedicated to the product, and moved the servers to a European region when the client asked.

Reviewed live, then twice a week

The current release ran on the client's cloud for review before the statement of work was signed, and later work was walked through with the founder twice a week.

Scope that grew with the product

The client added requests beyond the original statement of work as the product took shape, and we scoped each one on its own before it joined the plan.

What this unlocked

With the product on a current base, the client scoped new AI features on top of it with us: a financial advisor widget using retrieval and a voice-capable sales agent chatbot.

Have a product with the same kind of constraints?

Tell us what already exists and what you want it to do. We will tell you what it takes.

Book a 30-minute Product Review