In the rapidly evolving world of software development, effective team collaboration remains one of the biggest challenges. From communication transparency to progress tracking, from task duplication to missed deadlines - these issues become even more critical as teams scale or work remotely.
Tagai emerges as a specialized project management platform, meticulously designed for software development teams. More than just a task tracker, Tagai envisions itself as a "digital assistant" that optimizes workflows, reduces response times, and amplifies productivity. Our mission is to seamlessly integrate people, processes, and technology into a unified ecosystem.
- Agile-First: Built with Scrum and Kanban methodologies at its core
- Developer-Centric: Tailored specifically for software development workflows
- Real-Time Collaboration: Instant updates and notifications keep everyone synchronized
- Scalable Architecture: Grows with your team and project complexity
- 🏗️ Multi-Project Dashboard - Centralized view of all your projects
- 👥 Team Collaboration - Role-based access control and permissions
- 📊 Progress Analytics - Real-time insights and reporting
- 🎯 Sprint Management - Complete sprint lifecycle management
- 📝 Backlog Management - Prioritize and organize user stories
- 🔄 Drag & Drop Kanban - Intuitive visual workflow management
- 📈 Burndown Charts - Track sprint progress and velocity
- ✅ User Stories & Tasks - Hierarchical work breakdown
- 🏷️ Smart Tagging - Categorize and filter work items
- ⏰ Deadline Tracking - Automated reminders and notifications
- 📎 File Attachments - Cloud-based file storage with Cloudinary
- 🔎 Global Search - Find anything across projects instantly
- 📚 Wiki System - Collaborative documentation with Markdown support
- 🔔 Real-Time Notifications - Stay updated with WebSocket integration
- 🔐 OAuth2 Integration - Secure login with Google and GitHub
Bùi Thế Vĩnh Nguyên |
Nguyễn Trí Dũng |
Nguyễn Nhật Thành |
Our database architecture is carefully designed to support complex project management workflows with optimal performance and scalability.
- Normalized Structure: Eliminates data redundancy and ensures consistency
- Relationship Integrity: Foreign key constraints maintain data relationships
- Scalable Schema: Designed to handle growing data volumes
- Performance Optimized: Strategic indexing for fast query execution
- Users & Authentication: Secure user management with role-based access
- Projects & Teams: Multi-project support with team collaboration
- Agile Workflow: Sprint, User Stories, Tasks with hierarchical structure
- Communication: Comments, notifications, and activity tracking
- Documentation: Wiki pages with file attachments
- Configuration: Customizable project settings and permissions
- Framework: Spring Boot 3.x
- Security: Spring Security with JWT & OAuth2
- Database: MySQL 8.0 with JPA/Hibernate
- Caching: Redis for session management
- Real-time: WebSocket for live updates
- Cloud Storage: Cloudinary for file management
- Build Tool: Maven
- Framework: React 19 with Hooks
- Styling: Tailwind CSS for modern UI
- State Management: React Context & Custom Hooks
- Drag & Drop: React Beautiful DnD
- HTTP Client: Axios with interceptors
- Routing: React Router v6
- Build Tool: Vite for fast development
- Containerization: Docker & Docker Compose
- Web Server: Nginx for production serving
- Development: Hot reload and live development servers
- Java 17+
- Node.js 18+
- MySQL 8.0+
- Redis
- Docker (optional but recommended)
# Clone the repository
git clone https://github.com/NguyenBui256/thuctapcoso.git
cd tagai
# Start all services with Docker Compose
docker-compose up -d
# Access the application
# Frontend: http://localhost:5173
# Backend API: http://localhost:8080cd ttcs
./mvnw clean install
./mvnw spring-boot:runcd frontend
npm install
npm run devtagai/
├── 📁 ttcs/ # Spring Boot Backend
│ ├── 📁 src/main/java/ # Java source code
│ ├── 📁 src/main/resources/ # Configuration files
│ └── 📄 pom.xml # Maven dependencies
├── 📁 frontend/ # React Frontend
│ ├── 📁 src/ # React source code
│ ├── 📁 public/ # Static assets
│ └── 📄 package.json # NPM dependencies
├── 📁 db/ # Database scripts
├── 📄 docker-compose.yml # Docker configuration
└── 📄 README.md # This file
Create .env files for configuration:
DATABASE_URL=jdbc:mysql://localhost:3306/tagai
DATABASE_USERNAME=your_username
DATABASE_PASSWORD=your_password
REDIS_HOST=localhost
REDIS_PORT=6379
JWT_SECRET=your_jwt_secret
CLOUDINARY_URL=your_cloudinary_urlVITE_API_URL=http://localhost:8080/api
VITE_BACKEND_URL=http://localhost:8080We welcome contributions! Please see our Contributing Guidelines for details.
- 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
This project is licensed under the MIT License - see the LICENSE file for details.
If you have any questions or need support, please:
- 📧 Create an issue on GitHub
- 💬 Join our discussions
- 📖 Check our documentation
Built with ❤️ by the Tagai Team
⭐ Star this repo if you find it helpful!










































