Skip to content
2019 and future(?) Operating Systems
TypeScript JavaScript HTML Other
Branch: master
Clone or download
Latest commit d84fb75 Aug 29, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.vscode Updates tsconfig… Aug 29, 2019
distrib Updates tsconfig… Aug 29, 2019
source Initial commit Aug 26, 2019
test Initial commit Aug 26, 2019
.gitignore Initial commit Aug 26, 2019 Update Aug 26, 2019
c Initial commit Aug 26, 2019
index.html adds language to HTML tag Aug 29, 2019
tsconfig.json updates tsconfig. Aug 29, 2019
tsos.css Initial commit Aug 26, 2019

2019 Browser-based Operating System in TypeScript

This is Alan's Operating Systems class initial project. See for details. It was originally developed by Alan and then enhanced by Bob Nisco and Rebecca Murphy over the years. Fork this (or clone, but fork is probably better in case Alan changes anything about the initial project) into your own private repository. Or download it as a ZIP file. Then add Alan (userid Labouseur) as a collaborator.

Setup TypeScript

  1. Install the npm package manager if you don't already have it.
  2. Run npm install -g typescript to get the TypeScript Compiler. (You may need to do this as root.)


Some IDEs (e.g., Visual Studio Code, IntelliJ, others) natively support TypeScript-to-JavaScript compilation. If your development environment does not then you'll need to automate the process with something like Gulp.

  • Setup Gulp
  1. npm install -g gulp to get the Gulp Task Runner.
  2. npm install -g gulp-tsc to get the Gulp TypeScript plugin.

Run gulp at the command line in the root directory of this project. Edit your TypeScript files in the source/scripts directory in your favorite editor. Visual Studio and IntelliJ have some tools that make debugging, syntax highlighting, and lots more quite easy. WebStorm looks like a nice option as well.

Gulp will automatically:

  • Watch for changes in your source/scripts/ directory for changes to .ts files and run the TypeScript Compiler on them.
  • Watch for changes to your source/styles/ directory for changes to .css files and copy them to the distrib/ folder if you have them there.

A Few Notes

What's TypeScript? TypeScript is a language that allows you to write in a statically-typed language that outputs standard JavaScript. It's all kinds of awesome.

Why should I use it? This will be especially helpful for an OS or a Compiler that may need to run in the browser as you will have all of the great benefits of strong type checking and scope rules built right into your language.

Where can I get more info on TypeScript Right this way!

You can’t perform that action at this time.