TR Backend is a social media management platform backend designed to support content creation, post management and social account integrations.
The platform allows users to:
- Manage social media content in one place
- Create and edit posts
- Generate post content using Gemini AI integration
- Store and manage media assets with MinIO
- Use Redis for caching and performance optimization
- Connect social media accounts (toDo)
The goal of the project is to provide backend infrastructure for an AI-powered social media management system.
- GEMINI_API_KEY=YOUR GEMINI API KEY
- LINKEDIN_CLIENT_ID=YOUR LINKEDIN CLIENT ID
- LINKEDIN_CLIENT_SECRET=YOUR LINKEDIN SECRET
- LINKEDIN_REDIRECT_URI=LINKED IN REDIRECT URI
- STRIPE_SECRET_KEY=STRIPE SECRET KEY
- STRIPE_WEBHOOK_SECRET=STRIPE WEBHOOK SECRET
- Create posts
- Edit post content
- Manage publication-ready content
- Store media assets
- Gemini API integration
- Generate social media post ideas
- AI-assisted content creation
- Support for automated content workflows
- Centralized social media management
- Multi-account support
- Social account connection
TR Backend is a REST API structured using a multi-project architecture with separated business logic, repositories, domain models and tests.
Client
↓
tr-api
↓
tr-service
↓
tr-repository
↓
PostgreSQL
Additional services:
- Redis (caching)
- MinIO (object storage)
- ASP.NET Core
- C#
- PostgreSQL
- Redis
- MinIO
- Docker Compose
- xUnit / NUnit
- Entity Framework Core (if used)
tr-backend/
│
├── tr-api/
├── tr-service/
├── tr-repository/
├── tr-core/
├── Tests/
└── docker-compose.yml
- Cookie-based authentication
- Session management
- REST API
- Layered Architecture
- Repository Pattern
- Service Layer
- PostgreSQL persistence
- Redis caching
- MinIO object storage
- Dockerized dependencies
- Unit/Integration tests
Application is deployed and available on Azure:
API Base URL
https://team-red-api.azurewebsites.net/Hosted on Microsoft Azure App Service.
- Azure App Service
- PostgreSQL
- Redis
- MinIO
- Docker-based local development
- Cloud deployed backend
- Microsoft Azure App Service
git clone https://github.com/norbik2004/tr-backend.git
cd tr-backendRun dependencies:
docker compose up -dStarts:
- PostgreSQL → localhost:5435
- Redis → localhost:6379
- MinIO API → localhost:9000
- MinIO Console → http://localhost:9001
Login: miniouser
Password: miniopassword
dotnet restoredotnet buildcd tr-api
dotnet runExample appsettings.json
{
"ConnectionStrings": {
"DefaultConnection": "Host=localhost;Port=5435;Database=postgres;Username=postgres;Password=postgres"
},
"Redis": {
"ConnectionString": "localhost:6379"
},
"Minio": {
"Endpoint": "localhost:9000",
"AccessKey": "miniouser",
"SecretKey": "miniopassword"
}
}Port: 5435Port: 6379Ports:
9000
9001dotnet test- CI/CD pipeline
- Background jobs
- Unit tests
- Linking social media accounts
This project is for educational and portfolio purposes.
