job-task-server Tailwind Templates

Job Task Server

TaskFlow is a modern and efficient task management web application built with React, Firebase, and Tailwind CSS. The backend server, powered by Node.js, Express, and MongoDB, provides secure APIs for user authentication, task management, and real-time task updates.

TaskFlow - Task Management Server

Introduction

TaskFlow is a modern and efficient task management web application built with React, Firebase, and Tailwind CSS. The backend server, powered by Node.js, Express, and MongoDB, provides secure APIs for user authentication, task management, and real-time task updates.

Table of Contents

Features

  • User Authentication: Secure user authentication with Firebase.
  • Task Management: Users can create, update, delete, and manage tasks.
  • Task Status Updates: Change task status (e.g., pending, in progress, completed).
  • Task Filtering: Retrieve tasks based on user email.
  • Real-time Updates: Firebase integration for instant task synchronization.
  • Secure API: Built with Express and MongoDB.

Technologies Used

  • Backend: Node.js, Express.js
  • Database: MongoDB (Atlas)
  • Authentication: Firebase
  • Frontend: React, Tailwind CSS
  • Environment Management: dotenv
  • CORS Handling: cors
  • Deployment: Netlify (Frontend), Render/Heroku (Backend)

Installation

Prerequisites

Ensure you have the following installed:

  • Node.js (v16+)
  • MongoDB (Local or Atlas)
  • Firebase API Key (for frontend)

Steps to Install and Run Locally

  1. Clone the repository

    git clone https://github.com/Rohithossain12/job-task-server
    cd job-task-server
    
  2. Install dependencies

    npm install
    
  3. Set up environment variables Create a .env file and add the following:

    PORT=5000
    DB_USER=your_mongo_username
    DB_PASS=your_mongo_password
    
  4. Start the server

    npm start
    

    The server will run at http://localhost:5000

Dependencies

The project relies on the following dependencies:

{
  "cors": "^2.8.5",
  "dotenv": "^16.4.7",
  "express": "^4.21.2",
  "mongodb": "^6.13.0"
}

Usage

  • Users can register/login via Firebase authentication.
  • Create a Task: Users can add tasks with descriptions.
  • Update Tasks: Modify task details or status.
  • Delete Tasks: Remove tasks when completed.

API Endpoints

User Management

  • POST /users - Save user data in the database

Task Management

  • POST /tasks - Save a new task
  • GET /[email protected] - Retrieve tasks by email
  • PATCH /tasks/:id - Update task status
  • PUT /tasks/:id - Update task details (name, description)
  • DELETE /tasks/:id - Delete a task

Environment Variables

The server requires the following .env variables:

PORT=5000
DB_USER=your_mongo_username
DB_PASS=your_mongo_password

License

This project is licensed under the ISC License.


Contributors

Top categories

Loading Svelte Themes