Skip to content

Group Project for General Assembly Software Engineering Immersive Remote Program. Express/Mongo API with JWT authentication.

Notifications You must be signed in to change notification settings

roryellis/Group-project-CRM-backend

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

essentialCRM - Backend API

Description

essentialCRM is a Customer Relationship Management tool designed to provide a simple, no frills way to keep track of communications and transactions with your clients. It will store User account information and Client contact information with communication and transaction records associated to both the purchasing client and the user responsible for the sale.

Deployed Applications

Github Repositories

Technologies Used

  • express - Node.js framework
  • mongoose - MongoDB object modeling
  • bcrypt - Password Hashing
  • passport - Password authentication
  • passport-jwt - Authentication Strategy
  • jsonwebtoken - Generating authentication tokens
  • nodemon - Running local express application
  • MongoDB Atlas/Local MongoDB Community Server - Database

Testing Technologies

  • chai - Testing assertion library
  • mocha - Testing framework
  • superagent - HTTP request library
  • supertest - Testing library

Getting Started

Supported Endpoints

  • Users
    • /api/users
      • '/signin' - POST with email and password to return an Authorization Bearer Token.
      • '/' - GET all user records, POST a new user record
      • '/:email' - GET user by email, PUT update user record, DELETE user record
      • '/:email/transactions' - GET all transactions by user email
      • '/:email/communications' - GET all communications by user email
  • Clients
    • /api/clients
      • '/' - GET all client records, POST a new client record
      • '/:email' - GET client by email, PUT update client record, DELETE client record
      • '/:email/transactions' - GET all transactions by client email
      • '/:email/communications' - GET all communications by client email
  • Transactions
    • /api/transactions
      • '/' - GET all transactions, POST a new transaction
      • '/:id' - GET transaction by id, PUT update transaction, DELETE transaction
  • Communications
    • /api/communications
      • '/' - GET all communications, POST a new communication
      • '/:id' - GET communication by id, PUT update communication, DELETE communication

Contribution

  • This is a student project presented for evaluation and is not open for outside contributions at this time.

Contributor Team

About

Group Project for General Assembly Software Engineering Immersive Remote Program. Express/Mongo API with JWT authentication.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%