A modern analytics platform built with React and Node.js, designed to provide real-time customer insights and data visualization.
- Real-time analytics dashboard
- Customer behavior tracking
- Revenue and conversion metrics
- Third-party integrations (Mixpanel, Stripe)
- AWS CloudWatch logging and monitoring
- Secure deployment pipeline
├── frontend/ # React TypeScript frontend
├── backend/ # Express TypeScript API
├── infrastructure/ # AWS CDK infrastructure as code
└── .github/ # GitHub Actions CI/CD
- Node.js 18+
- npm or yarn
- AWS CLI configured
- Docker (optional)
# Install dependencies
npm install
# Start development servers
npm run dev
# Build for production
npm run buildcd backend
npm install
npm run devThe backend API will be available at http://localhost:3001
cd frontend
npm install
npm run devThe frontend will be available at http://localhost:3000
The application deploys automatically via GitHub Actions when code is pushed to the main branch. The deployment process is fully automated and includes:
- Infrastructure provisioning via AWS CDK
- Container deployment to Amazon ECS
- Monitoring dashboard setup
- Automated health checks and verification
The GitHub Actions workflow handles:
- Testing: Runs unit and integration tests
- Building: Creates production-ready builds
- Infrastructure: Deploys AWS resources (CloudWatch, ECS, ALB)
- Application: Deploys containerized application
- Monitoring: Configures dashboards and alerts
- Notification: Sends deployment status to team
For manual deployment or local development, you'll need to configure AWS credentials:
# Configure AWS CLI (required for deployment)
export AWS_ACCESS_KEY_ID=your_access_key_here
export AWS_SECRET_ACCESS_KEY=your_secret_key_here
export AWS_DEFAULT_REGION=us-east-1
# Deploy infrastructure
cd infrastructure
npm run deploy
# Build and deploy application
npm run buildImportant: Never commit AWS credentials to version control. Use IAM roles, AWS Secrets Manager, or environment variables for production deployments.
The application includes comprehensive logging and monitoring:
- CloudWatch Logs:
/aws/ctf-analytics-platform/application-logs - Audit Logs:
/aws/ctf-analytics-platform/audit-logs - Metrics Dashboard: Available in AWS CloudWatch
Environment variables are managed through:
- Local development:
.envfiles - Production: AWS Secrets Manager
- CI/CD: GitHub Secrets
# Run all tests
npm test
# Run backend tests
cd backend && npm test
# Run frontend tests
cd frontend && npm test- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Submit a pull request
MIT License - see LICENSE for details.
For support, please contact the development team or create an issue in the repository.