Skip to content

Ismailab1/team-tasks-ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Team Tasks AI

Project Overview

This project is developed for the Azure AI Developer Hackathon. Team Tasks AI is a collaborative task management web application that integrates AI-powered check-ins and summaries, allowing teams to manage tasks efficiently.

Tech Stack

Frontend:

  • React.js (Vite) - Web application framework
  • TailwindCSS / Material UI - UI Styling
  • React Router - Navigation
  • Redux / Zustand - State Management
  • Axios - API calls to backend

Backend:

  • Node.js + Express.js - Backend Framework
  • Azure Functions - Serverless API
  • Azure Cosmos DB - NoSQL Database
  • Azure OpenAI GPT - AI-generated summaries
  • Azure Cognitive Services - Speech-to-Text, Sentiment Analysis

Infrastructure & Deployment:

  • Azure Static Web Apps - Hosting Web Frontend
  • Azure App Service - Hosting API
  • Azure Monitor - Logging & performance tracking
  • GitHub Actions - CI/CD for automated deployment

Folder Structure

team-tasks-ai/
│── backend/                # Backend API (Node.js, Express.js)
│   │── server.js           # Main entry point
│   │── .env                # Environment variables
│   │── routes/             # API routes (auth, teams, tasks, check-ins)
│   │── models/             # Database models
│   │── middleware/         # Middleware (Auth, Logging, Error Handling)
│   │── services/           # Business logic & AI integrations
│   │── utils/              # Helper functions
│   │── package.json        # Backend dependencies
│   │── README.md           # Backend documentation
│
│── frontend/               # Frontend Web App (React.js)
│   │── src/                # React source files
│   │   │── components/     # Reusable UI components
│   │   │── pages/         # Page-level components (Dashboard, Check-ins, Tasks)
│   │   │── hooks/         # Custom React hooks
│   │   │── context/       # Global state management (Redux/Zustand)
│   │   │── services/      # API calls to backend
│   │   │── styles/        # TailwindCSS or custom styles
│   │   │── App.js         # Main React component
│   │   │── index.js       # React entry point
│   │── public/            # Static assets
│   │── package.json       # Frontend dependencies
│   │── README.md          # Frontend documentation
│
│── infra/                  # Infrastructure as Code (Azure deployment)
│   │── azure-pipelines.yml # CI/CD pipeline (GitHub Actions or Azure DevOps)
│   │── terraform/          # Terraform scripts for infrastructure provisioning
│   │── Dockerfile          # Docker containerization (optional)
│
│── .gitignore              # Ignore files for Git
│── README.md               # Main project documentation
│── LICENSE                 # Open-source license (MIT recommended)

Getting Started

1. Clone the repository:

git clone https://github.com/Ismailab1/team-tasks-ai.git
cd team-tasks-ai

2. Backend Setup

cd backend
npm install

Create a .env file and add your credentials:

PORT=5000
AZURE_OPENAI_KEY=your_key_here
AZURE_COSMOS_DB_URI=your_db_uri_here

Run the server:

npm start

3. Frontend Setup

cd frontend
npm install
npm run dev

4. Deployment

  • Deploy frontend to Azure Static Web Apps
  • Deploy backend to Azure App Service or Azure Functions
  • Set up CI/CD with GitHub Actions

API Endpoints

Method Endpoint Description
POST /api/auth/register Register a new user
POST /api/team/create Create a new team
POST /api/task/add Add a task to a team with multiple assignees
PUT /api/task/update/:task_id Update a task, including multiple assignees
GET /api/task/list/:team_id Get all tasks for a team
DELETE /api/task/delete/:task_id Delete a task
POST /api/checkin/submit Submit a check-in

Task API Changes

  • Task Creation (/api/task/add): Now accepts an array of assigned_to user IDs.
  • Task Update (/api/task/update/:task_id): Allows modifying assigned_to to add or remove assignees.
  • Task Retrieval (/api/task/list/:team_id): Returns tasks with multiple assignees in an array.

License

This project is licensed under the Apache 2.0.

Contributors

  • Ismail Abdullah (@ismailab1) - Project Lead
  • Name (@githubUsername) - Frontend
  • Name (@githubUsername) - Frontend
  • Name (@githubUsername) - Backend
  • Name (@githubUsername) - UI/UX
  • Name (@githubUsername) - Project Management

About

This project is developed for the Azure AI Developer Hackathon. This is a collaborative task management web app that integrates AI-powered check-ins and summaries.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors