2.7 KiB
2.7 KiB
Nitrokite
Complete digital marketing platform for small businesses. Website creation, SEO tracking, online booking, social media content generation, review management, and customer feedback - all in one place.
Project Structure
nitrokite/
├── backend/ # Go/Gin API server
│ ├── main.go
│ ├── go.mod
│ └── migrations/ # Database migrations
├── marketing/ # Astro marketing website
│ ├── src/
│ └── dist/ # Built static files
├── deployment/ # Infrastructure & deployment
│ ├── ansible/ # Server configuration
│ └── scripts/ # Deployment automation
└── .gitea/
└── workflows/ # CI/CD pipelines
Services
Marketing Website
- URL: https://nitrokite.com
- Tech: Astro static site generator
- Location:
marketing/ - Marketing README
API Server
- URL: https://api.nitrokite.com
- Tech: Go + Gin + PostgreSQL
- Location:
backend/ - Backend README
Git Server
- URL: https://git.nitrokite.com
- Tech: Gitea with 5 CI/CD runners
Application
- URL: https://app.nitrokite.com
- Tech: TBD (SPA placeholder)
Monitoring
- URL: https://grafana.nitrokite.com
- Tech: Grafana
Quick Start
Backend Development
cd backend
go mod download
air # Live reload
Marketing Development
cd marketing
npm install
npm run dev # http://localhost:4321
Deployment
cd deployment/ansible
ansible-playbook -i hosts.ini site.yml
Infrastructure
- Server: Ubuntu 24.04 on DigitalOcean
- SSL: Let's Encrypt certificates (auto-renewal)
- Reverse Proxy: Nginx with HTTP/2
- Database: PostgreSQL 14
- CI/CD: Gitea Actions with 5 runners
- Deployment: Blue-green with automated rollback
Development Workflow
-
Feature Development
- Create branch from
main - Develop locally with live reload
- Push to feature branch
- Create branch from
-
Testing
- CI runs tests automatically
- Manual testing on feature branch
-
Deployment
- Merge to
main - CI builds and stages deployment
- Manual promotion to production
- Automatic rollback on failure
- Merge to
Monitoring & Operations
- Health Checks: Automated via deployment scripts
- Logs:
journalctl -u api-server -f - Metrics: Grafana dashboards
- SSL Renewal: Automatic via cron
Documentation
License
Copyright © 2025 Nitrokite. All rights reserved.