Thanks to visit codestin.com
Credit goes to github.com

Skip to content

A simple weekly task tracking application for company staff. Track your tasks from Monday to Friday with a clean, modern UI inspired by Devfolio.

Notifications You must be signed in to change notification settings

Moses-main/Taskr

Repository files navigation

WeekTask Tracker

A simple weekly task tracking application for company staff. Track your tasks from Monday to Friday with a clean, modern UI inspired by Devfolio.

Features

  • User registration and login with JWT authentication
  • Weekly task management (Monday-Friday)
  • Task status tracking (Planned, In Progress, Completed)
  • Team View to see other users' tasks
  • Dark, modern UI with smooth animations
  • Week navigation to view past/future weeks

Tech Stack

  • Frontend: Vite + React.js
  • Backend: Node.js + Express.js
  • Database: PostgreSQL
  • Authentication: JWT

Prerequisites

  • Node.js (v18+)
  • PostgreSQL (v14+)

Setup Instructions

1. Database Setup

Create the PostgreSQL database and run the schema:

# Create database (if needed)
createdb weektask

# Run the schema
psql -d weektask -f backend/schema.sql

2. Backend Setup

cd backend
npm install

Configure environment variables in backend/.env:

PORT=5000
DB_USER=postgres
DB_PASSWORD=postgres
DB_HOST=localhost
DB_PORT=5432
DB_NAME=weektask
JWT_SECRET=your-secret-key-here

Start the backend server:

npm run dev

The backend will run on http://localhost:5000

3. Frontend Setup

cd frontend
npm install

Start the development server:

npm run dev

The frontend will run on http://localhost:3000

Usage

  1. Open http://localhost:3000 in your browser
  2. Register a new account or login
  3. Add tasks for each day of the current week
  4. Update task status as you progress
  5. Use "Team View" to see what your colleagues are working on

Project Structure

weektask/
├── backend/
│   ├── config/
│   │   └── db.js          # Database connection
│   ├── middleware/
│   │   └── auth.js         # JWT authentication
│   ├── models/
│   │   ├── user.js        # User model
│   │   └── task.js        # Task model
│   ├── routes/
│   │   ├── auth.js        # Auth routes
│   │   └── tasks.js      # Task routes
│   ├── schema.sql         # Database schema
│   ├── server.js          # Express server
│   └── .env               # Environment variables
├── frontend/
│   ├── src/
│   │   ├── App.jsx        # Main app component
│   │   ├── main.jsx       # Entry point
│   │   └── index.css      # Global styles
│   ├── index.html
│   ├── package.json
│   └── vite.config.js
└── README.md

API Endpoints

Authentication

  • POST /api/auth/register - Register new user
  • POST /api/auth/login - Login user
  • GET /api/auth/me - Get current user
  • GET /api/auth/users - Get all users (authenticated)

Tasks

  • GET /api/tasks/my-tasks - Get current user's tasks for a week
  • GET /api/tasks/team-tasks - Get all team tasks for a week
  • POST /api/tasks - Create a new task
  • PUT /api/tasks/:id - Update a task
  • DELETE /api/tasks/:id - Delete a task

License

MIT

About

A simple weekly task tracking application for company staff. Track your tasks from Monday to Friday with a clean, modern UI inspired by Devfolio.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages