Code Monkey home page Code Monkey logo

employee-tracker's Introduction

Employee Tracker

Description

A command-line application to manage a company's employee database, using Node.js, Inquirer, and MySQL

Contents

Usage

GIVEN a command-line application that accepts user input

  • WHEN I start the application
    • THEN I am presented with the following options: view all departments, view all roles, view all employees, add a department, add a role, add an employee, and update an employee role
  • WHEN I choose to view all departments
    • THEN I am presented with a formatted table showing department names and department ids
  • WHEN I choose to view all roles
    • THEN I am presented with the job title, role id, the department that role belongs to, and the salary for that role
  • WHEN I choose to view all employees
    • THEN I am presented with a formatted table showing employee data, including employee ids, first names, last names, job titles, departments, salaries, and managers that the employees report to
  • WHEN I choose to add a department
    • THEN I am prompted to enter the name of the department and that department is added to the database
  • WHEN I choose to add a role
    • THEN I am prompted to enter the name, salary, and department for the role and that role is added to the database
  • WHEN I choose to add an employee
    • THEN I am prompted to enter the employee’s first name, last name, role, and manager and that employee is added to the database
  • WHEN I choose to update an employee role
    • THEN I am prompted to select an employee to update and their new role and this information is updated in the database

Screenshot

Video Description

The below video is a demonstration of how this application is supposed to work.

Screen-Recording-2022-05-14-at-3.mp4

Schema Description

  • Department

    • id: INT PRIMARY KEY
    • name: VARCHAR(30) to hold department name
  • Role

    • id: INT PRIMARY KEY
    • title: VARCHAR(30) to hold role title
    • salary: DECIMAL to hold role salary
    • department_id: INT to hold reference to department role belongs to
  • Employee

    • id: INT PRIMARY KEY
    • first_name: VARCHAR(30) to hold employee first name
    • last_name: VARCHAR(30) to hold employee last name
    • role_id: INT to hold reference to employee role
    • manager_id: INT to hold reference to another employee that is manager of the current employee. This field may be null if the employee has no manager.

Instructions

  • Add a .env file to the root of the app with the following details
DB_NAME='employee'
DB_USER='root'
DB_PW='xxx'

Built With

  • MySql2
  • Promise-MySql
  • Node.js
  • Express.js
  • Console Table
  • Dotenv
  • JavaScript
  • Inquirer
  • Chalk
  • Figlet

Credits

  • Created by Amir Hackett

employee-tracker's People

Contributors

amir-hackett avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.