TypeScript出来有段时间了,也冒出了很多用TypeScript开发的优秀开源项目,搜寻了一些基于TypeScript项目,分享给大家:

https://github.com/brookshi/awesome-typescript-projects 喜欢的朋友请star支持,谢谢。

TypeScript

可能有人奇怪这里说的是基于TypeScript的开源项目,为什么TypeScript本身也在这里。

其实TypeScript语言本身就是用TypeScript编写的,即self-hosting,使用上一稳定版本的编译器来编译本次版本。

TypeScript就不做太多介绍了,不熟悉的同学可以参考我之前写的 C#到TypeScript系列

IDE - VSCode

基于TypeScript + Nodejs + Electron开发的IDE. Github上star: 2万+

VSCode大家应该都知道,同样是微软开发,没使用过的建议试用下,相对于Visual Studio的笨重,VSCode非常轻,占用内存少,打开项目速度快,而且跨平台,非常适合用来做前端或Nodejs开发。

支持的特性也很多,通过扩展能支持非常多的语言,比如C#, GO, C++等,最近发布的包还原生支持Markdown语法,我的文章都是用VSCode写的。

打开大文件真的是秒开,之前用Notepad++打开大文件还有点迟顿,格式化成Json更是直接卡死,VSCode则完全没问题。

其他基于TypeScript的IDE还有: 在线IDE monaco-edit,游戏开发IDE superpowers等,有兴趣的同学可以去awesome typescript projects了解下。

Framework - Angular2

基于TypeScript + RxJS + ZoneJS的Framework. Github上star: 2万+

大名鼎鼎的前端三剑客之一,背后的老爹Google确保了Angular的质量,Angular从Angular2开始采用TypeScript来开发,强类型对框架的稳定性提供不少支持。

微软Azure的页面就是用Angular写的,下面这个也是Angular2的一个dashboard应用。

在Angular2上衍生了不少优秀的框架或库,如 angular-seed,material2, ui-router等。

其他框架还有很多诸如 ionic,NativeScript,AtomicGameEngine的优秀框架都是用TypeScript开发的,国内的白鹭引擎(egret)同样基于TypeScript。

UI - ant-design

基于TypeScript + React的UI界面库. Github上star: 1万+

ant-design是由国内阿里旗下的蚂蚁金服的团队用TypeScript开发的一款企业级React UI库,已经应用到金服和其他阿里旗下产品当中。

ant-design的UI看起来非常美观,而且不显累赘,文档也非常完整,重点是文档是中文版的,相信非常适合国内开发使用。

ant-design也推出了mobile版ant-design-mobile,这样不管是web端还是移动端都可以有同一套UI设定。

同样基于TypeScript的UI库还有不少,如Angular的material2,和ant-design有一拼的blueprint都是其中佼佼者。

library - ui-router

基于TypeScript + Angular的UI router库. Github上star: 1万+

ui-router的目的是提供一个管理UI跳转的库,基于状态机维护了一个层级的状态树,这个库对于单页应用来说非常有用。

现在应用页面非常多,如果没有一个管理中心的话,不停的跳转后状态很容易乱掉,这个库就是用来解决这个问题。

下图最底下的那条就是页面的路由,在微软的Azure上也有用到。

library - RxJS

这个库现在出到5代,之前是用JavaScript开发,5代开始采用TypeScript开发。 Github上star: 5千+

当然第四代是很出名的,Github已经有超过1万的star。

这个库算是响应式编程库家庭中的一员,其他还有RxJava,Rx.NET,RxGO等。

RxJS是基于流的概念,提供了一系列神奇的函数工具集,使用它们可以合并、创建、过滤这些流。

一个流或者多个流可以作为另一个流的输入。比如你可以合并多个流,或者从很多流中选出你需要的,还可以将值从一个流映射到另一个流。

这种方式对于事件的处理会非常方便,具体可以去github上查看相关文档。

tool - tslint

做JavaScript开发的有ESLint来规范代码,而TypeScript则可以用TSLint。 Github上star: 1千+

开发一个项目往往有好几个甚至十几人,不同的人不同的代码风格,这时就需要一款工具来规范一下代码,来提高代码质量和可维护性。

基本上上面写的项目都有用到这款工具,可见其流行程度。

总结

上面从IDE, Framework, UI, 库,工具等方面分别介绍了一些TypeScript的流行开源项目,其它还有很多有潜力的项目如Nodejs的ORM框架:TypeORM等,大家可以去awesome typescript projects翻翻。

这些都说明TypeScript已经非常成熟,稳定了,而且上面项目有一些是从JavaScript转过来的重新打造的项目,由此可以说明TypeScript确实可以给项目带来实实在在的好处。

TypeScript的发展还在继续,做为微软走向开源的一个标志性项目,有理由相信TypeScript将来会有很好的发展。

TypeScript 优秀开源项目大合集的更多相关文章

  1. 直接拿来用!Facebook移动开源项目大合集

    直接拿来用!Facebook移动开源项目大合集 时间:2014-04-22 15:37 作者:唐小引 随着iOS依赖管理工具CocoaPods和大量第三方开源库成熟起来,业界积累了大量的优秀开源项目. ...

  2. DolphinScheduler 荣获 2021 中国开源云联盟优秀开源项目奖!

    点击上方 蓝字关注我们 好消息,中国开源云联盟(China Open Source Cloud League,简称"COSCL")于近日公布 2021 杰出开源贡献者.优秀开源项目 ...

  3. Golang优秀开源项目汇总, 10大流行Go语言开源项目, golang 开源项目全集(golang/go/wiki/Projects), GitHub上优秀的Go开源项目

    Golang优秀开源项目汇总(持续更新...)我把这个汇总放在github上了, 后面更新也会在github上更新. https://github.com/hackstoic/golang-open- ...

  4. 网络安全中机器学习大合集 Awesome

    网络安全中机器学习大合集 from:https://github.com/jivoi/awesome-ml-for-cybersecurity/blob/master/README_ch.md#-da ...

  5. 【年度开源、工具合集】牛津计划,DMTK,Graph Engine…提高你的工作效率!

    本篇合集包括以下三个部分的内容: 1.微软亚洲研究院过去一年的所有开源合集,如分布式机器学习工具包DMTK等. 2.利用微软研究院的技术提高工作效率的工具合集,如让没有机器学习背景的开发人员也能开发出 ...

  6. github优秀开源项目大全-iOS

    github优秀开源项目大全-iOS APR 25TH, 2014 前言 本文旨在搜集github上优秀的开源项目 本文搜集的项目都是用于iOS开发 本文会持续更新… 完整客户端 ioctocat g ...

  7. Android优秀开源项目

    本文转自:http://blog.tisa7.com/android_open_source_projects Android优秀开源项目 Android经典的开源项目其实非常多,但是国内的博客总是拿 ...

  8. jeecg智能开发平台参与-2013年度中国优秀开源项目评比

    JEECG正在参与<2013年度中国十大优秀开源项目> 评比,如果大家觉得JEECG还不错, 请投出你宝贵的一票,给我们以支持吧!!! [目前排名第8位] https://code.csd ...

  9. 【Oracle教程资源大合集】Oracle数据库免费学习资源汇总

    Oracle的产品非常丰富,各类学习资源也五花八门,本文将介绍Oracle官方的免费教程与风哥整理的Oracle视频教程: 1.Oracle帮助中心 Oracle帮助中心也称为Oracle文档中心,这 ...

随机推荐

  1. MySQL安装 MySQL5.7.10免安装版配置,mysql5.7.10免安装版

    MySQL5.7.10免安装版配置,mysql5.7.10免安装版  最新版的 Mysql 不提供图形界面的安装了, 下载下来是一个压缩包的形式, 那么我们如何来使用它呢, 让它为我们工作呢? 环境: ...

  2. 使用(Drawable)资源——LayerDrawable资源

    与StateListDrawable有点类似,LayerDrawable也可包含一个Drawable数组,因此系统将会按这些Drawable对象的数组顺序来绘制它们,索引最大的Drawable对象将会 ...

  3. java环境设置与运行

    在初学java编程语言时,痛苦的事莫过于跟着示例一步步做,总是得不到想要的结果,这是很多初学者都会碰到的问题.下面详细教你运行第一个java应用程序(环境windows xp + jdk 6.0): ...

  4. ORA-01555经典错误

    --创建undo表空间时固定表空间的大小 sys@TDB112>create undo tablespace undo_small 2  datafile'/u01/app/oracle/ora ...

  5. 《你不知道的js》 ------1.作用域是什么

    相关定义 引擎:从头到尾负责整个JavaScript程序的编译及执行过程. 编译器:负责语法分析及代码生成等. 作用域:负责收集并维护由所有声明的标识符(变量)组成的一系列查询,并实施一套非常严格的规 ...

  6. ubuntu14.04下手动安装eclipse

    ubuntu14.04下手动安装eclipse 第一步: 安装jdk 第二步: 下载eclipse,假设下载的文件文件名为eclipse.tar.gz 第三步: 解压 sudo -zxvf ./ecl ...

  7. localStorage , sessionStorage ,cookie 使用介绍

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. pch 文件

    PCH的文件的用途:      在实际的项目开发中,如果很多地方都在使用某个类的头文件,很多地方都在使用同一个”宏”的时候:很多地方用到了NSLog()函数, 在app发布的时候,想清除掉时,此时就需 ...

  9. MongoDB学习总结(一) —— Windows平台下安装

    > 基本概念 MongoDB是一个基于分布式文件存储的开源数据库系统,皆在为WEB应用提供可扩展的高性能数据存储解决方案.MongoDB将数据存储为一个文档,数据结构由键值key=>val ...

  10. Github windows客户端简单上手教程

    作为一个前端,如果不知道GitHub,那你有可能就是一个假前端(O(∩_∩)O哈哈~)开个玩笑...进入正题,咳咳... 1.第一步要在GitHub官网下载最新的客户端,网址是https://desk ...