# fikribotdev/tes-sshd architecture

> Architecture diagram of the GitHub repository fikribotdev/tes-sshd, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-25). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/fikribotdev/tes-sshd
- Repository: https://github.com/fikribotdev/tes-sshd

## Overview

This repository is a collection of unrelated experiments and applications; its only top-level README identifies the repository as “tes-sshd” and documents no product workflow. Sampled code shows distinct finance, invoice, document, reminder, chatbot, and game projects, but does not establish that they form one product. The graph therefore focuses on the best-supported substantial application, TemanDuit_AI, and its transaction-recording workflow; broader capabilities are included where the tree supports them. Only selected source excerpts were available, so links among unsampled subsystems are omitted.

Main entry points: [`Projects/TemanDuit_AI/backend/src/database/DatabaseManager.ts`](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/database/DatabaseManager.ts) (Database manager), [`Projects/TemanDuit_AI/backend/src/controllers/TransactionController.ts`](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/controllers/TransactionController.ts) (Transaction API), [`Projects/TemanDuit_AI/frontend/src/app/transactions/page.tsx`](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/frontend/src/app/transactions/page.tsx) (Finance pages), [`Projects/TemanDuit_AI/frontend/src/lib/api.ts`](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/frontend/src/lib/api.ts) (API client)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_client["Finance frontend"]
  node_webapp["Finance pages<br/>[page.tsx]"]
  node_api["API client<br/>[api.ts]"]
end

subgraph group_server["Backend API"]
  node_routes["API routes<br/>[index.ts]"]
  node_txcontroller["Transaction API"]
  node_telegram["Telegram bot<br/>[TelegramBot.ts]"]
  node_scheduler["Scheduler"]
end

subgraph group_domain["Finance domain"]
  node_auth["Auth service<br/>[AuthService.ts]"]
  node_expense["Expense engine<br/>[ExpenseEngine.ts]"]
  node_income["Income engine<br/>[IncomeEngine.ts]"]
  node_budget["Budget engine<br/>[BudgetEngine.ts]"]
  node_debt["Debt engine<br/>[DebtEngine.ts]"]
  node_saving["Savings engine<br/>[SavingEngine.ts]"]
  node_analytics["Analytics engine<br/>[AnalyticsEngine.ts]"]
  node_ai["AI engine<br/>[AIEngine.ts]"]
  node_reminder["Reminder engine<br/>[ReminderEngine.ts]"]
  node_notification["Notification engine"]
end

subgraph group_infra["State and integrations"]
  node_dbmanager["Database manager<br/>[DatabaseManager.ts]"]
  node_database[("Finance data<br/>[DatabaseManager.ts]")]
end

node_user(("Finance user"))
node_pollinations["Pollinations AI"]

node_user -->|"uses pages"| node_webapp
node_webapp -->|"requests data"| node_api
node_api -->|"calls API"| node_routes
node_routes -->|"dispatches"| node_txcontroller
node_txcontroller -->|"records expense"| node_expense
node_txcontroller -->|"updates income"| node_income
node_txcontroller -->|"reads transactions"| node_dbmanager
node_expense -->|"persists data"| node_dbmanager
node_income -->|"persists data"| node_dbmanager
node_dbmanager -->|"reads and writes"| node_database
node_auth -->|"persists accounts"| node_dbmanager
node_budget -->|"reads and writes"| node_dbmanager
node_debt -->|"reads and writes"| node_dbmanager
node_saving -->|"reads and writes"| node_dbmanager
node_analytics -->|"reads data"| node_dbmanager
node_ai -.->|"requests models"| node_pollinations
node_reminder -->|"reads and writes"| node_dbmanager
node_notification -->|"reads and writes"| node_dbmanager
node_telegram -->|"requests AI"| node_ai
node_scheduler -->|"schedules reminders"| node_reminder

click node_webapp "https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/frontend/src/app/transactions/page.tsx"
click node_api "https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/frontend/src/lib/api.ts"
click node_routes "https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/routes/index.ts"
click node_txcontroller "https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/controllers/TransactionController.ts"
click node_auth "https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/services/AuthService.ts"
click node_expense "https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/engines/ExpenseEngine.ts"
click node_income "https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/engines/IncomeEngine.ts"
click node_budget "https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/engines/BudgetEngine.ts"
click node_debt "https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/engines/DebtEngine.ts"
click node_saving "https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/engines/SavingEngine.ts"
click node_analytics "https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/engines/AnalyticsEngine.ts"
click node_ai "https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/engines/AIEngine.ts"
click node_reminder "https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/engines/ReminderEngine.ts"
click node_notification "https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/engines/NotificationEngine.ts"
click node_telegram "https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/bot/TelegramBot.ts"
click node_scheduler "https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/services/SchedulerService.ts"
click node_dbmanager "https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/database/DatabaseManager.ts"
click node_database "https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/database/DatabaseManager.ts"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_webapp,node_api,node_user toneBlue
class node_routes,node_txcontroller,node_telegram,node_scheduler toneAmber
class node_auth,node_expense,node_income,node_budget,node_debt,node_saving,node_analytics,node_ai,node_reminder,node_notification toneMint
class node_dbmanager,node_database toneRose
class node_pollinations toneIndigo
```

## Components

### Finance frontend

- [Finance pages](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/frontend/src/app/transactions/page.tsx): `Projects/TemanDuit_AI/frontend/src/app/transactions/page.tsx`
- [API client](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/frontend/src/lib/api.ts): `Projects/TemanDuit_AI/frontend/src/lib/api.ts`

### Backend API

- [API routes](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/routes/index.ts): `Projects/TemanDuit_AI/backend/src/routes/index.ts`
- [Transaction API](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/controllers/TransactionController.ts): `Projects/TemanDuit_AI/backend/src/controllers/TransactionController.ts`
- [Telegram bot](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/bot/TelegramBot.ts): `Projects/TemanDuit_AI/backend/src/bot/TelegramBot.ts`
- [Scheduler](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/services/SchedulerService.ts): `Projects/TemanDuit_AI/backend/src/services/SchedulerService.ts`

### Finance domain

- [Auth service](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/services/AuthService.ts): `Projects/TemanDuit_AI/backend/src/services/AuthService.ts`
- [Expense engine](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/engines/ExpenseEngine.ts): `Projects/TemanDuit_AI/backend/src/engines/ExpenseEngine.ts`
- [Income engine](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/engines/IncomeEngine.ts): `Projects/TemanDuit_AI/backend/src/engines/IncomeEngine.ts`
- [Budget engine](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/engines/BudgetEngine.ts): `Projects/TemanDuit_AI/backend/src/engines/BudgetEngine.ts`
- [Debt engine](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/engines/DebtEngine.ts): `Projects/TemanDuit_AI/backend/src/engines/DebtEngine.ts`
- [Savings engine](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/engines/SavingEngine.ts): `Projects/TemanDuit_AI/backend/src/engines/SavingEngine.ts`
- [Analytics engine](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/engines/AnalyticsEngine.ts): `Projects/TemanDuit_AI/backend/src/engines/AnalyticsEngine.ts`
- [AI engine](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/engines/AIEngine.ts): `Projects/TemanDuit_AI/backend/src/engines/AIEngine.ts`
- [Reminder engine](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/engines/ReminderEngine.ts): `Projects/TemanDuit_AI/backend/src/engines/ReminderEngine.ts`
- [Notification engine](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/engines/NotificationEngine.ts): `Projects/TemanDuit_AI/backend/src/engines/NotificationEngine.ts`

### State and integrations

- [Database manager](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/database/DatabaseManager.ts): `Projects/TemanDuit_AI/backend/src/database/DatabaseManager.ts`
- [Finance data](https://github.com/fikribotdev/tes-sshd/blob/main/Projects/TemanDuit_AI/backend/src/database/DatabaseManager.ts): `Projects/TemanDuit_AI/backend/src/database/DatabaseManager.ts`

### Other components

- **Finance user**
- **Pollinations AI**

## Connections

- Finance user → Finance pages: uses pages
- Finance pages → API client: requests data
- API client → API routes: calls API
- API routes → Transaction API: dispatches
- Transaction API → Expense engine: records expense
- Transaction API → Income engine: updates income
- Transaction API → Database manager: reads transactions
- Expense engine → Database manager: persists data
- Income engine → Database manager: persists data
- Database manager → Finance data: reads and writes
- Auth service → Database manager: persists accounts
- Budget engine → Database manager: reads and writes
- Debt engine → Database manager: reads and writes
- Savings engine → Database manager: reads and writes
- Analytics engine → Database manager: reads data
- AI engine → Pollinations AI: requests models
- Reminder engine → Database manager: reads and writes
- Notification engine → Database manager: reads and writes
- Telegram bot → AI engine: requests AI
- Scheduler → Reminder engine: schedules reminders
