Skip to main content

Vacation Planning

A Learning TypeScript > Interfaces 🥗 appetizer project. You'll practice writing interfaces to describe structural object types.

Welcome to beautiful upstate New York! We're so excited you've chosen us for your vacation from the crowds and dirt of New York City. Upstate New York features majestic mountains, quaint cottages, and wonderfully relaxing river walks.

Before you can enjoy your stay, however, there's one set of problems we need you to solve. We haven't finished coding the applications to assist you in planning your stay. Could you help us up-staters?

Setup

If you haven't yet, set up the github.com/LearningTypeScript/projects repository locally.

shell
git clone https://github.com/LearningTypeScript/projects learning-typescript-projects
cd learning-typescript-projects
npm i
shell
git clone https://github.com/LearningTypeScript/projects learning-typescript-projects
cd learning-typescript-projects
npm i

Open your editor in this project's directory:

shell
code projects/interfaces/vacation-planning
shell
code projects/interfaces/vacation-planning

In one terminal, run the TypeScript compiler via the tsc script within whichever step you're working on. For example, to start the TypeScript compiler on the first step in watch mode:

shell
npm run tsc -- --project 01-cities --watch
shell
npm run tsc -- --project 01-cities --watch

In another terminal, run Jest via the test script on whichever step you're working on. For example, to start tests for the first step in watch mode:

shell
npm run test -- 1 --watch
shell
npm run test -- 1 --watch

Note: your terminal should be in the vacation-planning directory, not the root repository's directory.

Steps

Notes

  • Don't import code from one step into another.