Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions docs/dev/adr/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
title: ADRs
parent: Development Guide
last_modified_date: 5.6.2025
---

# Architecture Decision Records

Here we are documenting all the decision records to make it easier in future to review them and revise them if necessary.
Let's keep them simple and to the point.
31 changes: 31 additions & 0 deletions docs/dev/adr/network-connectivity-of-services.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
---
title: Network Connectivity of Services
parent: ADRs
last_modified_date: 5.6.2025
---

# Network Connectivity of Services
## Decision
We decided to use Docker Compose file to define a service name for each deployed service then it can be reused as the URL for other services in the same docker network although they are in separate repos and deployed separately.

### Option 1: Docker Compose

#### Pros
- We can simply use `http:://<service-name>:port` as the url if they are in same docker network
#### Cons
- network name in the compose file need to be maintained if it is different from `coolify`

### Option 2: Using consistent custom container name

#### Pros
- We can simply use `http:://<custom-container-name>:port` as the url if they are in same docker network
#### Cons
- We are losing the rolling update feature (continuous deployment without downtime)

### Option 3: No config -> use container name

#### Pros
- Simple
#### Cons
- Container name will change after each deployment
- e.g. we need to update `telegram-interface` environment variable after each `linguly-core` update
10 changes: 10 additions & 0 deletions docs/dev/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
title: Development Guide
last_modified_date: 31.5.2025
---

# Development Guide

In this section we are trying to document all the necessary information for contributors who want to quickly develop Linguly further.

The guides are either step by step guide to setup the or troubleshoot or pointing to the necessary resources such as external resources or the readme files in the respective repos.
14 changes: 14 additions & 0 deletions docs/dev/troubleshoot/docs.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
title: Docs
parent: Troubleshoot
last_modified_date: 1.6.2025
---

# Troubleshoot Docs

## Just the Docs

### Image is not rendered in the final doc
Images may not be shown although you see them in a preview. It is likely because the paths are slightly different in the generated files and you might need to go one level back to the parent folder.
e.g. [check here](https://github.com/Linguly/docs/blob/main/docs/setup/how-to-setup.md?plain=1#L40)

9 changes: 9 additions & 0 deletions docs/dev/troubleshoot/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
---
title: Troubleshoot
parent: Development Guide
last_modified_date: 1.6.2025
---

# Troubleshoot

Here we want to document all the troubleshooting experiences we face during the Linguly development. give us a star if it helped saving seconds for you : )
12 changes: 12 additions & 0 deletions docs/dev/troubleshoot/linguly-core.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
title: Linguly Core
parent: Troubleshoot
last_modified_date: 1.6.2025
---

# Troubleshoot Linguly Core

## MongoDB

A TLS connection or so maybe because of the default IP filtering in Mongo Atlas. So don't forget to add your IP there or disable the feature if you are not storing sensitive data there.

18 changes: 18 additions & 0 deletions docs/dev/troubleshoot/telegram-interface.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
title: Telegram Interface
parent: Troubleshoot
last_modified_date: 2.6.2025
---

# Troubleshoot Telegram Interface

## General

If the messages and chat flow are acting weirdly, make sure you have followed the following:

- Don't forget to put `await` before any context change and does contexts are not changing in wrong order.
- If you want to leave a scene, that should be the last command.
- Except leaving the scene, if you are using `reply`, that should be the last command.
- Make sure all `reply`s and async functions are awaited, otherwise the session store update will happen before all the changes and you might loose the updates in Redis.

> Note: to debug Telegraf, you can use this environment variable: `DEBUG=telegraf:*`
6 changes: 6 additions & 0 deletions docs/dev/used-techs/docker.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
## Useful Commands

- List all the running dockers
```bash
docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Status}}"
```
5 changes: 3 additions & 2 deletions docs/setup/how-to-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,9 @@ Follow the quick installation from Coolify to install it in your server:
- add Linguly's [Telegram Interface](https://github.com/Linguly/telegram-interface) and [Linguly Core](https://github.com/Linguly/linguly-core) using [the Github app integration](https://youtu.be/taJlPG82Ucw?feature=shared&t=1898) or just clone the latest
- configure the `BOT_TOKEN` and `LINGULY_CORE_BASE_URL` for the telegram interface using the environment variable
> **NOTE**: `LINGULY_CORE_BASE_URL` can be your Linguly Core container name plus the exposed port e.g. `http://<coolify random name for the service>-<docker uuid>:3001`
![](./images/container-name.png)
![](./images/environment-variables.png)

![](../images/container-name.png)
![](../images/environment-variables.png)

## 3- Setup an LLM Model

Expand Down
16 changes: 16 additions & 0 deletions docs/setup/linguly-core-in-coolify.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
title: Setup Linguly Core in Coolify
parent: Setup
nav_order: 2
---

# Setup Linguly Core in Coolify

## Docker Network
- Setup it in same network as other services
- Setup in `coolify` default network otherwise need to modify network in the docker-compose.yaml
- More info in [this ADR](../dev/adr/network-connectivity-of-services.md)

## Environment Variables
Add the environment variables based on the [readme](https://github.com/Linguly/linguly-core?tab=readme-ov-file#environment-variables-for-local-setup).