Skip to content

🐬 A simplified implementation of TypeScript's type system written in TypeScript's type system

License

Notifications You must be signed in to change notification settings

ronami/HypeScript

Repository files navigation

🐬 HypeScript

Introduction

This is a simplified implementation of TypeScript's type system that's written in TypeScript's type annotations. This means that it uses types only — with no runtime code whatsoever.

You pass TypeScript code as a string to the TypeCheck generic and get possible type errors back (See the live demo):

showcase-1

☝ Please note that this project is meant to be used for fun and learning purposes and not for practical use.

Try running the code

See a live demo in your browser on the the github.dev editor.

Alternatively, install @ronami/hypescript in your project with yarn or npm (TypeScript 4.7 or later is required):

yarn add @ronami/hypescript

Code examples

Only a subset of TypeScript's syntax and features are available. Here's a list of examples (with browser demo links) for some code examples:

Inspiration

About

🐬 A simplified implementation of TypeScript's type system written in TypeScript's type system

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published