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

Overview

🐬 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 TypeScript Playground.

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

You might also like...

End-to-End type safety for REST APIs written in Fastify. Only problem is you have to explicity export and register route handlers. LOL

Chino intelligence in japaneese End-to-End type safety for REST APIs written in Fastify. Only problem is you have to explicity export and register rou

Sep 12, 2022

Type predicate functions for checking if a value is of a specific type or asserting that it is.

As-Is Description As-Is contains two modules. Is - Type predicates for checking values are of certain types. As - Asserting values are of a certain ty

Feb 10, 2022

Combine type and value imports using Typescript 4.5 type modifier syntax

type-import-codemod Combines your type and value imports together into a single statement, using Typescript 4.5's type modifier syntax. Before: import

Sep 29, 2022

🧬 A type builder for pagination with prisma and type-graphql.

🧬 Prisma TypeGraphql Pagination Prisma TypeGraphql Pagination builds prisma pagination types for type-graphql. import { ... } from 'type-graphql'

Apr 21, 2022

A type programming language which compiles to and interops with type-level TypeScript

Prakaar Prakaar (hindi for "type") is a type programming language which compiles to and interops with type-level TypeScript. Prakaar itself is also a

Sep 21, 2022

A transpiler from golang's type to typescript's type for collaboration between frontend & backend.

A transpiler from golang's type to typescript's type for collaboration between frontend & backend.

go2type go2type.vercel.app (backup site) A typescript transpiler that convert golang's type to typescript's type. Help front-end developer to work fas

Sep 26, 2022

100% type-safe query builder for node-postgres :: Generated types, call any function, tree-shakable, implicit type casts, and more

⚠️ This library is currently in alpha. Contributors wanted! tusken Postgres client from a galaxy far, far away. your database is the source-of-truth f

Dec 29, 2022

The full power of the Go Compiler directly in your browser, including a virtual file system implementation. Deployable as a static website.

The full power of the Go Compiler directly in your browser, including a virtual file system implementation. Deployable as a static website.

Static Go Playground Features Full Go Compiler running on the browser. Supports using custom build tags. Incremental builds (build cache). Supports mu

Jun 16, 2022

A Node.js client & server implementation of the WAMP-like RPC-over-websocket system defined in the OCPP-J protcols.

A Node.js client & server implementation of the WAMP-like RPC-over-websocket system defined in the OCPP-J protcols.

OCPP-RPC A client & server implementation of the WAMP-like RPC-over-websocket system defined in the OCPP-J protcols (e.g. OCPP1.6J and OCPP2.0.1J). Re

Dec 30, 2022
Comments
  • Is there any coverage doc?

    Is there any coverage doc?

    I'm making transformer-query, which can query typescript AST and able to change its structure more intuitively.

    For strict type assertion, I want to use this library. But I found this is not complete typescript implementation, so I wanna get syntax coverage of this.

    opened by SieR-VR 0
Owner
Ronen Amiel
Creating tools for developers @wix
Ronen Amiel
An unofficial, simplified version of the @Shopify/koa-shopify-auth middleware library.

simple-koa-shopify-auth https://www.npmjs.com/package/simple-koa-shopify-auth NOTE: This package is not maintained by or affiliated with Shopify. Desc

David 20 Nov 7, 2022
AWS Lambda and API Gateway, simplified for Javascript

alanajs AWS Lambda and API Gateway, simplified for JavaScript About alanajs Make setting up Lambda microservices easier than ever. alanajs is a free,

OSLabs Beta 64 Aug 1, 2022
Data-driven development, simplified.

CONTRACTUAL Table of Contents 0. Brief 1. Features 2. Installation 2.1 Download Installer 2.2 Fork and Clone Repo 3. How to Use 3.1 Contract Builder 3

OSLabs Beta 50 Nov 8, 2022
A simplified list crud that adds, removes and edits items

To-do list This project is as simplified todo list crud. Built With HTML CSS JavaScript Webpack Live version See live version Getting Started To get a

Fernando SaldaΓ±a 7 Apr 2, 2022
⚑ It is a simplified database module with multiple functions that you can use simultaneously with sqlite, yaml, firebase and json.

Prisma Database Developed with ?? by Roxza ⚑ An easy, open source database ?? Installation npm i prisma.db --save yarn add prisma.db ?? Importing impo

Roxza 21 Jan 3, 2023
Motionia is a lightweight simplified on demand animation library

The Ultimate & smart JS animation library! Simple fast , flexible & easy to integrate. No need to write page long CSS Keyframes that consumes a lot of

Abhi 324 Dec 30, 2022
A simplified jQuery date and time picker

jSunPicker A simplified jQuery date and time picker Why another Date picker? There are numerous date, time pickers out there. However, each of those l

null 1 May 31, 2022
An overly simplified Angular tool for interacting with Smart Contracts, demod at ng-conf 2022.

AngularOperator This is a sample repo and tool created for ng-conf 2022. It contains a normal Angular app designed to interact with the blockchain. It

Stephen Fluin 8 Oct 7, 2022
REST API simplified.

Deepkit REST REST API simplified npm i \ @deepkit-rest/http-extension \ @deepkit-rest/rest-core \ @deepkit-rest/rest-crud Overview DeepKit REST

DeepKit REST 8 Dec 30, 2022
The Frontend of Escobar's Inventory Management System, Employee Management System, Ordering System, and Income & Expense System

Usage Create an App # with npx $ npx create-nextron-app my-app --example with-javascript # with yarn $ yarn create nextron-app my-app --example with-

Viver Bungag 4 Jan 2, 2023