Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/thunderbug1/thirdwheeler
A Telegram Bot for couples to remind them about what their partner would like
https://github.com/thunderbug1/thirdwheeler
Last synced: about 22 hours ago
JSON representation
A Telegram Bot for couples to remind them about what their partner would like
- Host: GitHub
- URL: https://github.com/thunderbug1/thirdwheeler
- Owner: thunderbug1
- Created: 2024-08-31T18:14:55.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2024-09-09T09:07:29.000Z (about 2 months ago)
- Last Synced: 2024-09-09T10:57:43.053Z (about 2 months ago)
- Language: Python
- Size: 65.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ThirdWheeler
ThirdWheeler is a Telegram bot designed to improve communication between couples. The bot acts as a helpful assistant, offering reminders and suggestions based on what each partner would like to see more or less often. The bot stores conversations and user information in a PostgreSQL database, and it’s powered by a locally hosted Llama 3.1 language model using Ollama.
## Features
- **Partner Linking**: Users can link with their partners via a username or invite link.
- **Scheduled Reminders**: The bot can schedule reminders and actions based on user input and stored preferences.
- **Localized Communication**: The bot detects the user's preferred language and translates system messages accordingly.
- **Data Privacy**: Users can delete all their data or unlink from their partner at any time, with confirmations to prevent accidental actions.## Tech Stack
- **Python 3.12**
- **Telegram Bot API**: Using `python-telegram-bot` library.
- **PostgreSQL**: Database to store user information, conversations, and scheduled actions.
- **SQLAlchemy**: ORM for interacting with the PostgreSQL database.
- **Alembic**: Database migration tool (optional, but recommended).
- **Ollama**: Hosts the Llama 3.1 language model locally.
- **Docker**: For containerization, including a PostgreSQL database and the bot itself.## Getting Started
### Prerequisites
- **Python 3.12**
- **Docker** and **Docker Compose**
- **PostgreSQL** database or use the Docker setup for PostgreSQL
- **Ollama**: To host the Llama 3.1 model locally### Installation
1. **Clone the Repository**
```bash
git clone https://github.com/thunderbug1/ThirdWheeler.git
cd ThirdWheeler2. **start olama locally**
```bash
ollama serve3. **start docker compose**
```bash
docker compose up -d