Contoso Express

screenshot of Contoso Express

Full-stack JavaScript application based on Contoso University .NET tutorial

Overview:

The Contoso ExpressFull-stack JavaScript sample app is a remake of the famous Microsoft Contoso University tutorial. It provides essential infrastructure components necessary for modern web applications, including project structure, data access, authentication, error handling, logging, configuration, client-side as SPA (Single Page App), unit testing, and more. This project serves as a missing manual that demonstrates one way to build common infrastructure and is a valuable resource for those looking to acquaint themselves with Node.js.

Features:

  • Language: TypeScript utilized as an alternative to JavaScript for development.
  • DB: PostgreSQL used as the primary database with plans for alternative MongoDb implementation.
  • Data Access: Sequelize framework employed for handling data access.
  • Authentication: Passport library integrated for managing user authentication.
  • Logging: Logging functionality implemented using winston.
  • Validation: Joi library included for data validation purposes.
  • Client-side Render: React framework utilized as the client-side rendering solution.
  • Client Data Management: Redux employed for managing client-side data.
  • Client Build: Webpack utilized for the client build process.

Summary:

The Contoso ExpressFull-stack JavaScript sample app serves as a comprehensive demonstration of building common infrastructure for web applications using Node.js. With its focus on essential features such as data access, authentication, logging, and client-side rendering, this project provides developers with a valuable starting point for creating modern web applications. By leveraging technologies like TypeScript, Sequelize, React, and Redux, this sample project showcases best practices for developing full-stack JavaScript applications.