TypeScript 优秀开源项目大合集
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 优秀开源项目大合集的更多相关文章
- 直接拿来用!Facebook移动开源项目大合集
直接拿来用!Facebook移动开源项目大合集 时间:2014-04-22 15:37 作者:唐小引 随着iOS依赖管理工具CocoaPods和大量第三方开源库成熟起来,业界积累了大量的优秀开源项目. ...
- DolphinScheduler 荣获 2021 中国开源云联盟优秀开源项目奖!
点击上方 蓝字关注我们 好消息,中国开源云联盟(China Open Source Cloud League,简称"COSCL")于近日公布 2021 杰出开源贡献者.优秀开源项目 ...
- Golang优秀开源项目汇总, 10大流行Go语言开源项目, golang 开源项目全集(golang/go/wiki/Projects), GitHub上优秀的Go开源项目
Golang优秀开源项目汇总(持续更新...)我把这个汇总放在github上了, 后面更新也会在github上更新. https://github.com/hackstoic/golang-open- ...
- 网络安全中机器学习大合集 Awesome
网络安全中机器学习大合集 from:https://github.com/jivoi/awesome-ml-for-cybersecurity/blob/master/README_ch.md#-da ...
- 【年度开源、工具合集】牛津计划,DMTK,Graph Engine…提高你的工作效率!
本篇合集包括以下三个部分的内容: 1.微软亚洲研究院过去一年的所有开源合集,如分布式机器学习工具包DMTK等. 2.利用微软研究院的技术提高工作效率的工具合集,如让没有机器学习背景的开发人员也能开发出 ...
- github优秀开源项目大全-iOS
github优秀开源项目大全-iOS APR 25TH, 2014 前言 本文旨在搜集github上优秀的开源项目 本文搜集的项目都是用于iOS开发 本文会持续更新… 完整客户端 ioctocat g ...
- Android优秀开源项目
本文转自:http://blog.tisa7.com/android_open_source_projects Android优秀开源项目 Android经典的开源项目其实非常多,但是国内的博客总是拿 ...
- jeecg智能开发平台参与-2013年度中国优秀开源项目评比
JEECG正在参与<2013年度中国十大优秀开源项目> 评比,如果大家觉得JEECG还不错, 请投出你宝贵的一票,给我们以支持吧!!! [目前排名第8位] https://code.csd ...
- 【Oracle教程资源大合集】Oracle数据库免费学习资源汇总
Oracle的产品非常丰富,各类学习资源也五花八门,本文将介绍Oracle官方的免费教程与风哥整理的Oracle视频教程: 1.Oracle帮助中心 Oracle帮助中心也称为Oracle文档中心,这 ...
随机推荐
- Python3基础 global关键字 使函数的局部变量升格为全局变量
镇场诗: 诚听如来语,顿舍世间名与利.愿做地藏徒,广演是经阎浮提. 愿尽吾所学,成就一良心博客.愿诸后来人,重现智慧清净体.-------------------------------------- ...
- redis 安装启动及设置密码<windows>
redis 1. 安装 1.1 下载解压包,直接解压到任意路径下即可 windows下载地址:ttps://github.com/MSOpenTech/redis/releases 2.启动 2.1 ...
- 正确的 Composer 扩展包安装方法
问题说明 我们经常要往现有的项目中添加扩展包,有时候因为文档的错误引导,如下图来自 这个文档 的: composer update 这个命令在我们现在的逻辑中,可能会对项目造成巨大伤害. 因为 com ...
- AngularJS 讲解五, Factory ,Service , Provider
一. 首先说一下,为什么要引入Factory,Service和Provider这三个Service层. 1.因为我们不应该在controller层写入大量的业务逻辑和持久化数据,controller层 ...
- Handler消息传递机制——Handler、Loop、MessageQueue的工作原理
为了更好地理解Handler的工作原理,先介绍一下与Handler一起工作的几个组件. Message:Handler接收和处理的消息对象. Looper:每个线程只能拥有一个Looper.它的loo ...
- 交叉验证(cross validation)
转自:http://www.vanjor.org/blog/2010/10/cross-validation/ 交叉验证(Cross-Validation): 有时亦称循环估计, 是一种统计学上将数据 ...
- 【G】开源的分布式部署解决方案(一) - 开篇
做这个开源项目的意义是什么?(口水自问自答,不喜可略过) 从功能上来说,请参考 预告篇,因自知当时预告片没有任何含金量,所以并没有主动推送到首页,而是私下的给一些人发的. 从个人角度上来说,我希望.n ...
- KB奇遇记(5):奇葩的用人制度
8月份入职,公司不给我们正式任命,导致了我们开展工作困难重重,基本上很少有人会鸟你,做事仿佛名不正言不顺.哪怕你是未来信息部的老大也一样,网管们根本不买你的账.所以做ERP选型,做旧OA的选型以及加密 ...
- 深圳尚学堂:JavaScript中常见的字符串操作
快到春节放假了,春节后又是一大波的找工作热潮,在前端实招聘笔试时,必不可免额会考到关于JavaScript中字符串的处理问题.考的不是你会不会,而是你能不能在不借用XX手册或者XX指南再或者百度谷歌的 ...
- 《JAVASCRIPT高级程序设计》创建对象的七种模式
细看javascript创建对象模式的诞生,具体的脉络为:不使用任何模式——工厂模式——构造函数模式——原型模式——组合使用构造函数模式——动态原型模式——寄生构造函数模式——稳妥构造函数模式.每一种 ...