A beginner to intermediate tutorial series on setting up a Vue + Express + TypeScript SPA from end-to-end.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Vue + Express + Typescript: end-to-end tutorial

This repository documents through an extensively commented code-base and through its commit history the progression of a fully-featured and modern Single Page Application (SPA) that makes use of tools and technologies frequently seen in production-ready toolchains and environments.

Target Audience

This code-base is aimed at beginner to intermediate developers that have a basic grasp of web technologies (Javascript, HTML, and CSS) and would like to expand their knowledge beyond that to be valuable to a web shop or for their own projects.

It is also aimed in part for the experienced web-developer who is coming back from a long hiatus in web development or who would simply like to know how things work under-the-hood when using one of the many "starter kit"s or "boilerplate" repositories and scaffolding tools.

It makes use of no scaffolding tool at all, and everything is done from scratch. Each step provides an explanation of the purpose it serves and points the reader towards in-depth resources for those who desire to push further.

The accompanying tutorials are posted on my blog and will cross-reference the code from this repository.

How to use

The most efficient way to benefit from this repository is by browsing through the commit history and diffing the files as you follow along the tutorials.

  • Commits that relate directly to the tutorial will be flagged as feat(tutorial). If you want to follow along, these are the main commits that you should be diffing.
  • Commits that are fixes or addendums or otherwise indirectly related will be flagged as docs or fix and have a verbose description of what they are for. These are not directly linked to the tutorial, but may be worth looking at as an errata of sorts.
  • Commits that can safely be skipped over are labeled as chore and have little to no value to the tutorial. Only bother with those if you're a completionist.
  • Pull Requests are welcome for minor fixes or for comment clarification.