Production-ready microservices platform for building SaaS applications. Use it to accelerate client projects or deploy your own Developer Productivity Suite.
Vertex Platform is a consulting accelerator and product foundation rolled into one:
- For Consulting: Launch client projects in weeks instead of months using battle-tested auth, analytics, and infrastructure
- For Product: Build a Developer Productivity Suite with integrated tools for learning, collaboration, and organization
┌─────────────────────────────────────────────────────────────────┐
│ SHORT-TERM: Consulting Revenue │
│ • Use platform to build client MVPs fast │
│ • Each project improves the platform │
│ • Bill $150-250/hr with faster delivery │
├─────────────────────────────────────────────────────────────────┤
│ LONG-TERM: Developer Productivity Suite (SaaS) │
│ • Code Talk: Collaborative coding & technical interviews │
│ • FireBook: AI-powered developer bookmarks & research │
│ • IntervalAI: Spaced repetition for learning programming │
│ • educationELLy: Track your learning journey │
└─────────────────────────────────────────────────────────────────┘
These shared services work out of the box and accelerate any SaaS project:
| Service | Status | What It Does |
|---|---|---|
| Auth Service | Production | JWT auth, refresh tokens, multi-device support, SSO-ready |
| Analytics Service | Production | Event tracking, metrics, time-series queries via Kafka + InfluxDB |
| User Service | Planned | Profiles, preferences, cross-app identity |
| Notification Service | Planned | Email, SMS, push via message queue |
| Media Service | Planned | File uploads, S3/R2 storage, CDN delivery |
| Search Service | Planned | Full-text search via Elasticsearch |
Backend: Node.js, Express, Python/FastAPI (ML), GraphQL, Socket.io Databases: PostgreSQL (Neon), MongoDB, Redis, InfluxDB, Elasticsearch Infrastructure: Docker, Kubernetes-ready, Istio service mesh Messaging: Kafka, RabbitMQ Observability: Structured logging, health checks, correlation IDs
# Clone and install
git clone https://github.com/maxjeffwell/microservices-platform.git
cd microservices-platform
npm install
# Set up environment
cp .env.example .env
# Edit .env with your Neon DB URL and secrets
# Start infrastructure + services
docker compose up -d
# Services available at:
# Auth API: http://localhost:3001
# Analytics API: http://localhost:3005# 1. Copy project to your VPS
scp -r . user@your-vps:/opt/vertex-platform
# 2. SSH into VPS
ssh user@your-vps
cd /opt/vertex-platform
# 3. Configure production environment
cp .env.production.example .env.production
nano .env.production # Fill in your values
# 4. Deploy
./deploy.sh setup # First time only
./deploy.sh deploy # Pull images and start services
# Your API is now live at https://your-domain.com./deploy.sh deploy # Full deployment (pull + restart)
./deploy.sh status # Check service health
./deploy.sh logs # View all logs
./deploy.sh logs auth-service # View specific service
./deploy.sh backup # Backup data volumes
./deploy.sh health # Run health checks# Register
POST /api/auth/signup
{ "email": "user@example.com", "password": "secure123", "name": "User" }
# Login
POST /api/auth/signin
{ "email": "user@example.com", "password": "secure123" }
# Refresh token
POST /api/auth/refresh
{ "refreshToken": "..." }
# Verify token
GET /api/auth/verify
Authorization: Bearer <token>
# Logout
POST /api/auth/signout
Authorization: Bearer <token># Track event
POST /api/analytics/events
{
"appId": "code-talk",
"userId": "user-123",
"eventType": "feature",
"eventName": "room_created",
"properties": { "roomType": "interview" }
}
# Record metric
POST /api/analytics/metrics
{
"appId": "code-talk",
"metricName": "active_users",
"metricType": "gauge",
"value": 42
}
# Query data
GET /api/analytics/query?appId=code-talk&startTime=-7d&aggregation=countvertex-platform/
├── services/
│ └── platform/ # Shared services (use these for any project)
│ ├── auth-service/ # JWT authentication
│ └── analytics-service/ # Event tracking + metrics
├── shared/ # Reusable libraries
│ ├── errors/ # Centralized error handling
│ ├── logger/ # Winston logging with rotation
│ ├── middleware/ # Auth, rate limiting, health checks
│ └── utils/ # Common utilities
├── docker-compose.yml # Local development
├── docker-compose.prod.yml # Production deployment
├── Caddyfile # Reverse proxy + auto-SSL
├── deploy.sh # One-command deployment
└── .env.production.example # Production config template
When you engage me for a project, you get:
- Faster Delivery: Auth, analytics, and infrastructure are already built
- Production Quality: Battle-tested code with proper error handling, logging, security
- Scalable Architecture: Microservices that scale independently
- Modern Stack: Current best practices, not legacy patterns
- Documentation: Clear API docs and deployment guides
Typical Timeline:
- Traditional approach: 4-6 months
- With Vertex Platform: 4-8 weeks
The long-term vision is a suite of integrated tools for developers:
Real-time collaborative code editor for pair programming and technical interviews.
- WebSocket-based real-time sync
- Room management with permissions
- Integrated chat
- Code execution sandbox
AI-powered bookmark manager for developer research and documentation.
- Auto-extract metadata from URLs
- AI tagging and categorization
- Screenshot capture
- Smart collections
Spaced repetition system optimized for learning programming concepts.
- ML-optimized review scheduling
- Programming-specific content types
- Progress tracking
- API documentation flashcards
Track your learning journey across tutorials, courses, and projects.
- Progress dashboards
- Learning path recommendations
- Integration with other tools
┌─────────────────────────────────────────────────────────────────┐
│ Caddy (Reverse Proxy + SSL) │
└────────────────────────────┬────────────────────────────────────┘
│
┌────────────────────────────┼────────────────────────────────────┐
│ Platform Network │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────────────┐ │
│ │ Auth Service │ │ Analytics │ │ Future Services... │ │
│ │ (3001) │ │ (3005) │ │ │ │
│ └──────┬───────┘ └──────┬───────┘ └───────────────────────┘ │
│ │ │ │
│ ┌──────┴───────┐ ┌──────┴───────┐ ┌──────────────────────┐ │
│ │ Redis │ │ InfluxDB │ │ Kafka + Zookeeper │ │
│ │ (cache) │ │ (time-series)│ │ (event streaming) │ │
│ └──────────────┘ └──────────────┘ └──────────────────────┘ │
│ │
│ ┌──────────────┐ ┌──────────────┐ │
│ │ MongoDB │ │ PostgreSQL │ (Neon - external) │
│ │ (documents) │ │ (relational) │ │
│ └──────────────┘ └──────────────┘ │
└─────────────────────────────────────────────────────────────────┘
- JWT with refresh token rotation
- Password hashing (bcrypt, 10 rounds)
- Rate limiting per endpoint
- CORS protection
- Security headers (Helmet.js)
- Input validation
- Non-root Docker containers
- Internal network isolation (only Caddy exposed)
- Platform engineering at scale
- Microservices architecture with clear boundaries
- Production deployment practices
- Security-first design
- Observability and monitoring
- Clean code organization
- Comprehensive documentation
Jeff Maxwell - Full-Stack Engineer & Platform Architect
- GitHub: @maxjeffwell
- LinkedIn: Jeff Maxwell
- Portfolio: el-jefe.me
- Email: maxjeffwell@gmail.com
Interested in working together? I help startups and businesses build production-ready backends in weeks, not months.
MIT License - See LICENSE for details