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