AI-powered blogging platform with intelligent content generation, real-time SEO analysis, and performance tracking.
Transform your content creation workflow with advanced AI integration and built-in optimization tools.
- Multi-Provider LLM Support - OpenAI GPT and Ollama with automatic fallback
- Customizable Content - Adjustable tone, audience, word count, and keywords
- Context-Aware - Memory system for intelligent, coherent generation
- Batch Operations - Generate multiple posts efficiently
- Full CRUD Operations - Create, read, update, delete blog posts
- Draft System - Save drafts and publish when ready
- Markdown Editor - Native markdown support with HTML conversion
- Auto-Optimization - Automatic excerpt and content formatting
- Real-time SEO Analysis - Scoring, keyword density, readability metrics
- Performance Tracking - Views, engagement, traffic sources, conversions
- Automated Meta Tags - AI-generated titles, descriptions, structured data
- Export Tools - JSON/CSV data export for external analysis
- Clean Architecture - Layered design with clear separation of concerns
- RESTful API - Complete API with interactive Swagger documentation
- Responsive UI - Modern interface built with Bootstrap 5 and JavaScript
- Extensible - Easy to add features, integrations, and custom providers
| Category | Tech |
|---|---|
| Runtime | .NET 7.0+ / .NET 10.0 |
| Database | SQLite (default) / PostgreSQL (production) |
| Frontend | Razor Pages, Bootstrap 5, JavaScript |
| AI | OpenAI API, Ollama (local) |
| Caching | In-memory cache, Redis support |
| Logging | ASP.NET Core built-in |
- .NET 7.0 or higher
- Git
- Optional: OpenAI API key
- Optional: Ollama for local AI
# Clone repository
git clone https://github.com/Mostafa-SAID7/bloggingAgent.git
cd bloggingAgent
# Run application
cd bloggingAgent
dotnet runOpen http://localhost:5000 in your browser.
| Document | Purpose |
|---|---|
| Getting Started | Installation, configuration, first steps |
| API Documentation | Complete API reference with examples |
| Configuration Guide | Environment setup and settings |
| Architecture | System design and code structure |
| Deployment | Production deployment options |
GET /api/blog # List posts
POST /api/blog/generate # Generate new post
GET /api/blog/{slug} # Get specific post
POST /api/blog/publish/{id} # Publish post
POST /api/blog/unpublish/{id} # Unpublish post
GET /api/analytics # Overall analytics
GET /api/analytics/post/{id} # Post-specific metrics
GET /api/analytics/export # Export data (JSON/CSV)
POST /api/seo/analyze # Analyze content
POST /api/seo/meta-description # Generate meta description
POST /api/seo/keywords # Get keyword suggestions
GET /api/settings # Get configuration
POST /api/settings/update # Update settings
POST /api/settings/reset # Reset to defaults
Interactive Docs: Visit /swagger when app is running.
OpenAI (Recommended for Production)
{
"OpenAISettings": {
"ApiKey": "sk-your-key-here",
"Model": "gpt-3.5-turbo",
"Temperature": 0.7
}
}Ollama (Local Development)
{
"LlmSettings": {
"OllamaEndpoint": "http://localhost:11434",
"OllamaModel": "llama2"
}
}# Build image
docker build -t blogging-agent:latest .
# Run container
docker run -p 5000:80 \
-e OPENAI_API_KEY=sk-your-key \
blogging-agent:latest
# Using Docker Compose
docker-compose up -dbloggingAgent/
βββ Controllers/ # API endpoints
βββ Services/ # Business logic
βββ Data/ # Database & repositories
βββ Models/ # Domain entities
βββ Views/ # UI pages
βββ Agents/ # AI prompt templates
βββ Configuration/ # Settings classes
βββ Utilities/ # Helper functions
βββ wwwroot/ # Static assets
dotnet test
dotnet test --verbosity detaileddotnet publish -c Release -o ./publish# Add migration
dotnet ef migrations add MigrationName
# Apply changes
dotnet ef database update
# View history
dotnet ef migrations list| Issue | Solution |
|---|---|
| Port 5000 in use | dotnet run -- --urls "http://localhost:6000" |
| API key not working | Verify in appsettings.json or .env |
| Database errors | Delete .db-shm and .db-wal files, restart app |
| Build fails | dotnet clean && dotnet restore && dotnet build |
Contributions are welcome! Here's how:
- Fork the repository
- Create feature branch:
git checkout -b feature/amazing-feature - Commit changes:
git commit -m 'Add amazing feature' - Push to branch:
git push origin feature/amazing-feature - Open a Pull Request
- β Core blogging functionality
- β AI content generation
- β SEO analysis
- β Analytics dashboard
- β RESTful API
- π User authentication (in progress)
- π Advanced caching (planned)
- π Social media integration (planned)
This project is licensed under the MIT License - see LICENSE.txt
- π Documentation
- π Report Issues
- π¬ Discussions
- π§ Email: support@bloggingagent.com
- OpenAI - Advanced language models
- Ollama - Local AI processing
- .NET Community - Excellent frameworks and tools
- Bootstrap - Responsive UI components
| Link | Purpose |
|---|---|
| Setup Guide | First-time setup |
| API Reference | Complete endpoint documentation |
| Config Options | All settings explained |
| System Design | Technical overview |
| Deploy Guide | Production deployment |
| Example ENV | Environment variables template |
Built with β€οΈ to transform content creation
Transform your content creation workflow with the power of AI. Write better, faster, and smarter. π