TeamUp is a full-stack web application built with Next.js 13+ that transforms project management and team collaboration. With real-time updates, task approval workflows, and comprehensive project management features, TeamUp helps teams work more efficiently together.
- Google OAuth Integration: Secure authentication using Google credentials π
- Profile Management: User profiles with customizable avatars and email verification
- Role-Based Access: Granular permission system for project access
- Project Creation: Initialize projects with Markdown-rich descriptions π
- Team Management:
- Invite team members through email search
- Assign roles (owner π, maintainer π§, contributor π·)
- Remove members with automatic task reassignment
- Project Deletion: Safely remove projects with cleanup of associated tasks and user references
- Task Creation:
- Create detailed tasks with rich descriptions
- Upload and attach files to tasks π
- Assign multiple team members to tasks
- Task Workflow:
- Submit completed tasks for review
- Multi-stage approval process by project maintainers β
- Progress tracking with visual indicators
- Task Status: Real-time progress bars showing approval status
- Dark/Light Mode: Toggle between dark and light themes for comfortable viewing π
- Responsive Design: Fully responsive interface across devices
- Real-time Updates: Instant reflection of project and task changes
- Markdown Support: Rich text formatting for project and task descriptions
- File Attachments: Upload and manage files associated with tasks
- Secure Storage: Safe file storage and access control
- Frontend: Next.js 13+, React, Material-UI
- Backend: Next.js API Routes
- Database: MongoDB with Mongoose
- Authentication: NextAuth.js with Google Provider
- Storage: File upload capabilities with form handling
- Clone the repository:
git clone https://github.com/abz4375/TeamUp.git
- Install dependencies:
cd TeamUp
npm install
- Configure environment variables:
MONGODB_URI=your_mongodb_uri
AUTH_GOOGLE_ID=your_google_client_id
AUTH_GOOGLE_SECRET=your_google_client_secret
- Run the development server:
npm run dev
team-up/
βββ src/
β βββ app/ # Next.js 13+ app directory
β βββ components/ # Reusable React components
β βββ models/ # MongoDB schemas
βββ public/ # Static assets
βββ config/ # Configuration files
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Open a Pull Request
This project is licensed under the MIT License.
Built with π» by the TeamUp team