A comprehensive cloud finance platform built with modern technologies
- π Project Overview - High-level project information and business value
- π Project Management - Project planning, timelines, and team coordination
- ποΈ Architecture Guide - Technical architecture and system design
- π οΈ Technology Stack - Detailed technology choices and rationale
- π Setup Guide - Complete development environment setup
- π API Documentation - REST and GraphQL API reference
- ποΈ Database Schema - Database structure and relationships
- π Development Guidelines - Coding standards and best practices
- π’ Deployment Guide - Release management and deployment processes
- π± User-Facing Pages - Documentation of all user-facing pages including project management
- π Get Started - Set up the project in minutes
- π Available Scripts - All available npm commands
- π§ Troubleshooting - Common issues and solutions
- π€ Contributing - How to contribute to the project
CloudFi Labs is a full-stack monorepo application built with Next.js for the frontend and Node.js/Express for the backend, all written in TypeScript. This platform provides comprehensive financial management tools designed for the modern cloud infrastructure.
π For detailed project information, see Project Overview
This project follows Agile/Scrum methodology with comprehensive planning and tracking processes.
π For complete project management information, see Project Management Guide
Current Status: Phase 2 - Core Features (In Progress)
Sprint Goal: Complete user authentication and enhanced user management features
CloudFi Labs follows a modern, scalable, three-tier architecture:
Frontend (Next.js)
ββ GraphQL/REST API
GraphQL Layer (Apollo Server)
ββ Resolvers
Business Logic (Services)
ββ ORM (Prisma)
MySQL Database
π For detailed architecture information, see Architecture Guide
CloudFi Labs is built with a modern, enterprise-grade technology stack:
- Frontend: Next.js 14, TypeScript, Tailwind CSS, Apollo Client
- Backend: Node.js, Express.js, TypeScript, GraphQL
- Database: MySQL 8.0+ with Prisma ORM
- Development: Docker, ESLint, Prettier, Jest, Cypress
- Deployment: Docker Compose, CI/CD pipelines
π For detailed technology information, see Technology Stack Guide
Before you begin, ensure you have:
- Node.js: 18.0.0 or higher
- MySQL: 8.0+ (or Docker)
- Git: Latest version
- Docker: Latest version (for containerized deployment)
π For complete setup requirements, see Setup Guide
Get up and running in minutes:
# 1. Clone the repository
git clone <repository-url>
cd cloudfi
# 2. Start all services with Docker
docker-compose up -d
# 3. Access your application
# Frontend: http://localhost:3000
# Backend API: http://localhost:8000
# GraphQL Playground: http://localhost:8000/graphql# 1. Clone and install
git clone <repository-url>
cd cloudfi
npm install
# 2. Setup database (Docker recommended)
docker-compose -f database/docker-compose.yml up -d
# 3. Configure environment
cp apps/backend/.env.example apps/backend/.env
cp apps/frontend/.env.local.example apps/frontend/.env.local
# 4. Initialize database
npm run db:generate
npm run db:migrate
npm run db:seed
# 5. Start development servers
npm run devAccess your application:
- Frontend: http://localhost:3000
- Backend API: http://localhost:8000
- GraphQL Playground: http://localhost:8000/graphql
π For detailed setup instructions, see Setup Guide
Essential Commands:
npm run dev # Start both frontend and backend
npm run dev:frontend # Start frontend only
npm run dev:backend # Start backend only
npm run db:studio # Open database admin interface
npm test # Run all tests
npm run build # Build for production
npm run lint # Check code qualityDocker Commands:
docker-compose up -d # Start all services
docker-compose -f docker-compose.dev.yml up -d # Start dev services
docker-compose down # Stop all services
docker-compose build # Build all images
docker-compose logs -f # View live logsπ For complete script reference, see Setup Guide
Key Endpoints:
GET /health- Health checkGET /api/users- User managementPOST /graphql- GraphQL API
π For complete API documentation, see API Documentation
Common Issues:
- Port conflicts: Change ports in
.envfiles - Module not found: Run
npm installin root directory - Database connection: Check MySQL service and credentials
- Build failures: Run
npm run clean && npm install
# Reset everything
npm run clean
rm -rf node_modules package-lock.json
npm install
npm run devπ For detailed troubleshooting, see Setup Guide
Key Principles:
- Follow TypeScript and ESLint configurations
- Use conventional commit messages
- Write tests for new features
- Update documentation as needed
π For complete guidelines, see Development Guidelines
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Commit changes:
git commit -m 'feat: add amazing feature' - Push to branch:
git push origin feature/amazing-feature - Open a Pull Request
π For detailed contribution guidelines, see Development Guidelines
CloudFi Labs provides full Docker support for easy deployment and development.
- Frontend: Next.js application on port 3000
- Backend: Express API on port 8000
- Database: MySQL 8.0 on port 3306
# Start all services in development mode
docker-compose -f docker-compose.dev.yml up -d
# View logs
docker-compose logs -f
# Stop all services
docker-compose down# Build and start all services
docker-compose up -d --build
# Scale services (optional)
docker-compose up -d --scale frontend=3
# View running containers
docker-compose ps# Build images
docker-compose build
# Rebuild specific service
docker-compose build frontend
# Execute commands in running container
docker-compose exec backend sh
# View container logs
docker-compose logs frontendCloudFi Labs is deployed on Vercel with the following production URLs:
- Frontend: https://cloud-fi-labs-frontend.vercel.app
- Backend: https://cloud-fi-labs-backend.vercel.app
CloudFi Labs uses automated deployment with multiple environments:
- Development: Local development environment
- Production: Deployed on Vercel
π For complete deployment information, see Deployment Guide
- VS Code with recommended extensions
- Postman for API testing
- MySQL Workbench for database management
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with Next.js
- Powered by Node.js
- Styled with Tailwind CSS
- Icons by Lucide
CloudFi Labs - Empowering financial operations with modern cloud technology. π
For questions, issues, or contributions, please check our documentation or open an issue on GitHub.
- Port conflicts: Change ports in package.json or .env files
- Module not found: Run
npm installin the root directory - TypeScript errors: Run
npm run type-checkto identify issues - Build failures: Check for TypeScript or linting errors
# Clear all node_modules and reinstall
npm run clean && npm install
# Reset Next.js cache
rm -rf apps/frontend/.next
# Reset TypeScript build
rm -rf apps/backend/distapps/frontend/
βββ src/
β βββ app/ # Next.js App Router
β βββ components/ # React components
β βββ lib/ # Utility functions
β βββ styles/ # CSS and styling
βββ public/ # Static assets
βββ next.config.js # Next.js configuration
βββ tailwind.config.ts # Tailwind CSS config
apps/backend/
βββ src/
β βββ controllers/ # Route handlers
β βββ middleware/ # Express middleware
β βββ routes/ # API routes
β βββ types/ # TypeScript types
β βββ utils/ # Utility functions
β βββ index.ts # Application entry point
βββ .env.example # Environment variables template
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
- Planning: Use GitHub Projects for sprint planning and backlog management
- Tracking: Monitor progress through GitHub Issues and project boards
- Reporting: Generate weekly reports using GitHub Insights and project metrics
- Communication: Use GitHub Discussions for team communication and decision tracking
- Velocity: Average story points per sprint
- Burn-down Rate: Sprint progress tracking
- Code Quality: Test coverage, code review metrics
- Bug Rate: Issues found per release
- Feature Adoption: Usage statistics for new features
- User Satisfaction: Net Promoter Score (NPS)
- Performance: System uptime and response times
- ROI: Return on investment tracking
- Unit Tests: 80%+ code coverage requirement
- Integration Tests: API endpoint testing
- E2E Tests: Critical user journey validation
- Performance Tests: Load testing for scalability
- All tests must pass before merge
- Code review approval required
- Security scan completion
- Performance benchmarks met
- Development: Local development environment
- Staging: Pre-production testing environment
- Production: Live production environment
- Feature Freeze: 2 days before release
- QA Testing: Comprehensive testing in staging
- Release Approval: Stakeholder sign-off
- Deployment: Automated deployment with rollback capability
- Post-Release: Monitoring and validation
- Major Releases: Monthly (new features)
- Minor Releases: Bi-weekly (enhancements)
- Hotfixes: As needed (critical bugs)
- Project Manager: [Contact Information]
- Tech Lead: [Contact Information]
- Product Owner: [Contact Information]
- DevOps Lead: [Contact Information]
- Slack: #cloudfi-dev (development team)
- Slack: #cloudfi-pm (project management)
- Email: cloudfi-team@company.com
- Video Calls: Weekly all-hands meetings
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with Next.js
- Powered by Node.js
- Styled with Tailwind CSS
- Icons by Lucide
CloudFi Labs - Empowering financial operations with modern cloud technology. π