https://github.com/alirezabhd/nakisa
Nakisa is a Telegram bot that builds structured music communities around playlists.
https://github.com/alirezabhd/nakisa
aspnet-core community csharp discovery dotnet-core music-playlist open-source promotion social-media telegram-bot
Last synced: 2 months ago
JSON representation
Nakisa is a Telegram bot that builds structured music communities around playlists.
- Host: GitHub
- URL: https://github.com/alirezabhd/nakisa
- Owner: AlirezaBHD
- Created: 2025-07-23T11:25:17.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-09-18T09:37:42.000Z (10 months ago)
- Last Synced: 2025-09-18T11:41:52.872Z (10 months ago)
- Topics: aspnet-core, community, csharp, discovery, dotnet-core, music-playlist, open-source, promotion, social-media, telegram-bot
- Language: C#
- Homepage: https://t.me/NakisaMusicBot
- Size: 199 KB
- Stars: 5
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README

**Nakisa** is a Telegram bot that builds structured music communities around playlists.
Users can join categorized playlists, share songs, promote their channels, and connect with people who share the same music taste.
---
## 🚀 Features
- 🔹 User registration via Telegram
- 🔹 Join categorized playlists
- 🔹 Submit songs and mention your Telegram ID or channel
- 🔹 React to songs shared by others
- 🔹 Community-driven channel promotion
- 🔹 Discover and connect with people who share your music taste
---
## 🛠 Tech Stack
- **.NET 9** (ASP.NET Core, Clean Architecture)
- **PostgreSQL** as the database
- **Entity Framework Core** for ORM and migrations
- **Telegram Bot API**
- Clean Architecture with the following layers:
- `API`
- `Application`
- `Domain`
- `Infrastructure`
- `Persistence`
- `SharedKernel`
- `Tests`
---
## ⚡ Getting Started
### 1️⃣ Clone the repository
```bash
git clone https://github.com/AlirezaBHD/Nakisa.git
cd Nakisa
```
### 2️⃣ Configure environment variables
Create a `.env` file (or use `appsettings.json`) with:
```
ConnectionStrings__DefaultConnection="Host=host;Port=5432;Database=nakisa;Username=postgres;Password=postgres"
TelegramBot__Token=Your Bot Token
TelegramClient__ApiHash=Your Telegram Api Hash
TelegramClient__ApiId=Your Telegram Api Id
TelegramClient__PhoneNumber=+111111111111
```
### 3️⃣ Run the database
Using Docker:
`docker-compose up -d`
### 4️⃣ Apply migrations
`dotnet ef database update --project Nakisa.Persistence --startup-project Nakisa.API`
### 5️⃣ Run the project
`dotnet run --project Nakisa.API`
---
## 🤝 Contributing
Contributions, issues, and feature requests are welcome!
Feel free to check the [issues page](https://github.com/AlirezaBHD/Nakisa/issues).
1. Fork it
2. Create your feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add some amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request
---
## 📜 License
This project is licensed under the MIT License.