awesome-typescript-projects
awesome typescript open source projects.
Contributing
Please take a quick look at the contribution guidelines first. If you see a package or project here that is no longer maintained or is not a good fit, please submit a pull request to improve this file, Thanks.
TypeScript
TypeScript – TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
TypeScript is a language for application-scale JavaScript. TypeScript adds optional types, classes, and modules to JavaScript. TypeScript supports tools for large-scale JavaScript applications for any browser, for any host, on any OS. TypeScript compiles to readable, standards-based JavaScript.
DefinitelyTyped – for high quality TypeScript type definitions
Learning Resources
TypeScript-Handbook – The TypeScript Handbook is a comprehensive guide to the TypeScript language
typescript-book – The definitive guide to TypeScript and possibly the best TypeScript book
design_patterns_in_typescript – Here are the implementations of the following design patterns in TypeScript
TypeScriptSamples – Samples for TypeScript
angular-styleguide – AngularJS styleguide for teams
angular2-education – A list of helpful material to develop using Angular
angular2typescript – Code samples from the book Angular 2 Development with TypeScript
todomvc-redux-react-typescript – TodoMVC example using Redux, React, and Typescript
IDE
vscode – The best open source IDE
VS Code is a new type of tool that combines the simplicity of a code editor with what developers need for their core edit-build-debug cycle. Code provides comprehensive editing and debugging support, an extensibility model, and lightweight integration with existing tools.
monaco-editor – A browser based code editor
The Monaco Editor is the code editor that powers VS Code.
ALM – The best IDE for TypeScript
With great languages come great development tools.
superpowers – Extensible HTML5 app for real-time collaborative projects
Superpowers is a downloadable HTML5 app. You can use it solo like a regular offline game maker, or setup a password and let friends join in on your project through their Web browser. It’s great for working together over long periods of time, for jamming over a weekend, or just for helping each other out with debugging!
eve – Better tools for thought
Eve is a programming language and IDE based on years of research into building a human-first programming platform. You can play with Eve online here: play.witheve.com.
cats – Code Assistant for TypeScript
CATS is an IDE for TypeScript and Web developers. CATS is open source software released under the Apache 2.0 license and runs on Linux, Windows and OS X. CATS itself is also written in TypeScript, so you can easily customize it to your needs if required.
oni – Modern Modal Editing – powered by Neovim
The goal of this project is to provide both the full-fledged Vim experience, with no compromises, while pushing forward to enable new scenarios.
Modern UX – The Vim experience should not be compromised with poor user experiences that stem from terminal limitations.
Rich plugin development – using JavaScript, instead of VimL, allowing deep-language integration.
Cross-platform support – across Windows, OS X, and Linux.
Batteries included – rich features are available out of the box – minimal setup needed to be productive. TypeScript development is the canonical example, but the hope is that other language providers will be included. Later, an included package manager will make it simple to find and install plugins.
Performance – no compromises, Vim is fast, and Oni should be fast too.
Ease Learning Curve – without sacrificing the Vim experience
Vim is an incredible tool for manipulating text at the speed of thought. With a composable, modal command language, it is no wonder that Vim usage is still prevalent today even in the realm of modern editors.
However, going from thought to code has some different challenges than going from thought to text. IDEs today provide several benefits that help to reduce cognitive load when writing code, and that benefit is tremendously important – not only in terms of pure coding efficiency and productivity, but also in making the process of writing code enjoyable and fun.
The goal of this project is to give an editor that gives the best of both worlds – the power, speed, and flexibility of using Vim for manipulating text, as well as the rich tooling that comes with an IDE.
Framework
angular – One framework. Mobile & desktop.
Angular is a development platform for building mobile and desktop web applications using Typescript/JavaScript (JS) and other languages.
ngx-admin – Angular 2 admin dashboard framework
Admin panel framework based on Angular 2, Bootstrap 4 and Webpack.
Demo Page
angular-seed – Extensible, reliable and modular starter project for Angular 2 (and beyond) with statically typed build and AoT compilation
Provides fast, reliable and extensible starter for the development of Angular projects.
NativeScript – NativeScript is an open source framework for building truly native mobile apps with JavaScript. Use web skills, like Angular, FlexBox and CSS, and get native UI and performance on iOS and Android
NativeScript provides a best-of-both-worlds development experience. Our cross-platform JavaScript modules give you the convenience of writing iOS and Android apps from a single JavaScript codebase, while our runtimes give you the power of accessing native APIs, SDKs, and frameworks when you need them—all without needing to open Xcode or Android Studio. NativeScript was created and is supported by Telerik.
Mobile Case:
ionic – Build amazing native and progressive web apps with Angular and open web technologies. One app running on everything
Ionic is the open-source mobile app development framework that makes it easy to build top quality native and progressive web apps with web technologies.
Ionic is based on Angular and comes with many significant performance, usability, and feature improvements over the past versions.
Mobile Case:
ionic-native – Native features for mobile apps built with Cordova/PhoneGap and open web technologies.
Ionic Native is a curated set of wrappers for Cordova plugins that make adding any native functionality you need to your Ionic, Cordova, or Web View mobile app easy.
egret – Egret is a brand new open mobile game and application engine which allows you to quickly build mobile games and apps on Android,iOS and Windows.
Developed by Egret Technology, Egret Engine 4.0 includes a newly built 3D engine and a 2D engine created based on HTML5. With its robust cross-platform operability and commitment to solving the performance and fragmentation problems of HTML5 APP and games, Egret Engine 4.0 will perfectly meet developers’ needs.
Game Case:
AtomicGameEngine – The Atomic Game Engine is a multi-platform 2D and 3D engine with a consistent API in C#, JavaScript, TypeScript, and C++
The Atomic Game Engine is powerful 2D/3D technology developed by industry veterans and contributors from around the world.
Atomic is lean, full source, technology for mobile and desktop. It has a powerful core API with access to raw, down to the metal, native performance. Atomic technology leverages industry standard languages and tooling for use in games, education/training, serious applications, and new growth areas such as AR/VR.
Babylon.js – a complete JavaScript framework for building 3D games with HTML 5 and WebGL
Getting started? Play directly with the Babylon.js API via our playground. It contains also lot of simple samples to learn how to use it.
cyclejs – A functional and reactive JavaScript framework for predictable code
Cycle’s core abstraction is your application as a pure function main() where inputs are read effects (sources) from the external world and outputs (sinks) are write effects to affect the external world. These I/O effects in the external world are managed by drivers: plugins that handle DOM effects, HTTP effects, etc.
function main(sources) { const decrement$ = sources.DOM .select('.decrement').events('click').mapTo(-1); const increment$ = sources.DOM .select('.increment').events('click').mapTo(+1); const action$ = xs.merge(decrement$, increment$); const count$ = action$.fold((x, y) => x + y, 0); const vtree$ = count$.map(count => div([ button('.decrement', 'Decrement'), button('.increment', 'Increment'), p('Counter: ' + count) ]) ); return { DOM: vtree$ }; }
angular-seed-advanced – An advanced Angular seed project with support for ngrx/store, ngrx/effects, ngx-translate, angulartics2, lodash, NativeScript (native mobile), Electron (Mac, Windows and Linux desktop) and more.
UI
material2 – Material Design components for Angular
Our goal is to build a set of high-quality UI components built with Angular and TypeScript, following the Material Design spec. These components will serve as an example of how to write Angular code following best practices.
ant-design – A UI Design Language
An enterprise-class UI design language and React-based implementation.
ant-design-mobile – A configurable Mobile UI
A configurable Mobile UI specification and React-based implementation.
blueprint – A React-based UI toolkit for the web
It is optimized for building complex, data-dense web interfaces for desktop applications. If you rely heavily on mobile interactions and are looking for a mobile-first UI toolkit, this may not be for you.
plottable – A library of modular chart components built on D3
It’s easier to quickly build charts than with D3, and the charts are much more flexible than standard-template charts provided by charting libraries.
ng2-bootstrap – Native Angular directives for Bootstrap
ng2-bootstrap contains all core (and not only) Bootstrap components powered by Angular 2. So you don’t need to include original JS components, but we are using markup…