Apollo is a personal assistant that is meant to help neurodivergent people with their daily routines. I wrote specifically to help me manage my daily tasks, to check in on me and make sure I'm staying on track, and help me manage my time better. It is not meant to be a full-fledged AI assistant like Siri or Alexa, but rather a tool to help me stay organized and focused.
Explain Apollo's purpose, target audience, and key features here.
- Backend: ASP.NET Core
- Frontend: Vue.js
- Database: PostgreSQL
- Caching: Redis (required for Discord interaction session management)
- Task Scheduling: Quartz.NET
- .NET 9.0 SDK
- Docker and Docker Compose
- Node.js (for frontend development)
The easiest way to run Apollo is using Docker Compose, which will start all required services (API, PostgreSQL, Redis):
docker-compose up -d
- Ensure PostgreSQL and Redis are running (via Docker Compose or locally)
- Update connection strings in
src/Apollo.API/appsettings.Development.json
- Run database migrations:
dotnet ef database update --project src/Apollo.Database
- Start the API:
dotnet run --project src/Apollo.API
Redis is required for managing Discord interaction sessions. The default configuration expects:
- Host:
localhost:6379
- Password:
apollo_redis
Update the Redis
connection string in appsettings.Development.json
or set the REDIS_PASSWORD
environment variable for production deployments.