Skip to content

This is the Express + TypeScript backend for Work Flow, a productivity and project workflow management system for teams and admins.

License

Notifications You must be signed in to change notification settings

ibrah006/workflow-backend

Repository files navigation


🌐 ExpressTS Backend – README.md

# Work Flow — ExpressTS Backend

This is the Express.js + TypeScript backend for Work Flow, a productivity and project workflow management system for teams and admins.

🚀 Features

  • REST API with Role-based Auth (JWT)
  • Task & project lifecycle management
  • Staff attendance, layoff, and performance tracking
  • Admin stats and analytics endpoints
  • Scalable folder structure with CI/CD support

🛠️ Tech Stack

  • Node.js + Express.js
  • TypeScript
  • MongoDB with Mongoose
  • JWT Auth
  • Zod for validation

📦 Getting Started

npm install
npm install express
npm install --save-dev typescript ts-node @types/express @types/node nodemon
npm install typorm dotenv
Npm install pg --save
npm run dev

Make sure these compiler options are in tsconfig.json

Check to make sure of the following in tsconfig.json

{
  "compilerOptions": {
    ...
    "experimentalDecorators": true,
    "emitDecoratorMetadata": true,
    "target": "ES6",
    "module": "commonjs"
  }
}

Import reflect-metadata at the very top of your entry point

At the top of src/index.ts or main.ts (before anything else):

import 'reflect-metadata';

Setup basic Auth (JWT & Bcrypt)

npm install bcrypt jsonwebtoken
npm install --save-dev @types/bcrypt @types/jsonwebtoken

Dev Env Setup on Different OSs

MacOS

Setup PostgreSQL in just 2 steps!

  1. Install Postgresql
brew install postgresql
# Start postgresql service
brew services start postgresql

Check brew services status

brew services list
  1. Create DB user and DB
psql postgres
# Then inside the psql shell:
CREATE USER myuser WITH PASSWORD 'mypassword';
CREATE DATABASE mydb OWNER myuser;
\q

About

This is the Express + TypeScript backend for Work Flow, a productivity and project workflow management system for teams and admins.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published