• Stars
    star
    275
  • Rank 149,796 (Top 3 %)
  • Language
  • Created over 4 years ago
  • Updated over 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Low-code platform design rule

进阶:《云研发

无代码/低代码是一种创建应用的方法,它可以让开发人员使用最少的编码知识,来快速开发应用程序。它可以在图形界面中,使用可视化建模的方式,来组装和配置应用程序。开发人员可以直接跳过所有的基础架构,只关注于使用代码来实现业务逻辑。

目录

中台之后,便是无代码编程。

规模化的组织,经常要面临这样的挑战:每个应用的基础设施是相同的,部分的代码也是相同的,甚至于它们可能只是数据模型不同而已。结果却导致了,他/她们要一次又一次地重新编写一个应用。

对于一个新的应用而言,它需要对接大量的三方(非自己团队)服务。服务之间的不断变化 ,导致了对应的使用方也需要发生变化。不断变化的业务,导致了前台的设计不断变化。为了应对快速谈的的前台服务,后台便诞生了中台,以提供快速的响应能力。而随着中台进一步沉淀,从某种形式上趋于稳定,而前台仍然需要快速地响应能力。

于是乎,作为一个前端开发人员,我们不断提炼和复用代码,想着的模式在上一篇文章 减少代码量的 7~8 种方式 中提到了:

  • 脚手架
  • 组件库
  • 模式库
  • 模板和模板应用

对应的,我们还创建了一系列的 CLI、工具集、编程器插件以及设计系统,以完成整个系统的快速开发。然而,我们还缺少一套有效的工具,来统一化的管理这些工具。

换句话来说,就是:我们需要一个前端的中台,它便是无代码/低代码编程。

什么是无代码编程?

无代码/低代码是一种创建应用的方法,它可以让开发人员使用最少的编码知识,来快速开发应用程序。它可以在图形界面中,使用可视化建模的方式,来组装和配置应用程序。开发人员可以直接跳过所有的基础架构,只关注于使用代码来实现业务逻辑。

当然,从开发人员的角度来看,降低代码量,可能是:

  1. 框架本身处理了复杂性。毕竟 “复杂度同力一样不会消失,也不会凭空产生,它总是从一个物体转移到另一个物体或一种形式转为另一种形式。”
  2. 代码生成减少了工作量。大量的复制、粘贴需要更多的时间。

流程

只是凭借这个概念,我们是无法理解无代码编程的。于是,我画了一张图来展示相应的架构和流程:

低代码编程流程

依照我的观点来看,我将无代码编程分为了两部分:

  • 用于构建 UI 的编辑器——一种在线的拖拽式 UI 设计和页面构建工具
  • 用于编写业务逻辑的流编辑器——通过流编程的方式来编写业务代码(多数是对于数据的处理)

UI 编程器。为了设计出我们的 UI 构建器,我们需要准备好一系列的基础设施:

  • UI 编程器。用于拖拽式设计 UI。
  • 空白脚手架。一个带有完整的应用生命周期的项目,但是它是一个空白的项目——用于我们在构建 UI 的过程中,随时随地的添加组件和代码。
  • 设计系统。我们需要一个完整的组件库,大量的页面模板,以及一定数量的模板应用,减少相应的开发工具量。
  • 代码片段集。它将设计系统中的组件库进一步实例化成代码段,在完成编辑后通过 CLI 来动态编辑代码。
  • DSL(领域特定语言,可选)。中间生成物,用于隔离框架与设计。

流编程器。随后,为了在

  • 流编程器。用于拖拽式、输入编写业务代码。
  • 后端服务。如果不能提供现成的后端服务,则需要拥有一个标准的 API 规范,以及相应的 mock server。
  • 模式库。包含相应的业务处理代码,如通用的登录、数据获取、UI 交互等。
  • DSL(领域特定语言,可选)。同上

当然了,我们还需要能实时预览构建出来的应用。随后,我们执行了构建,而后构建出了一个半成品应用。开发人员只需要在它的基础上开发应用即可。而在开发人员开发的过程中,我们可以设计一系列的工具,来帮助开发人员更快速地构建应用。

  • 编辑器插件。包含设计系统、模式库等的自动完成代码,以及组织内部常用的代码库。
  • 调试工具。对于混合类型的应用而言,我们还需要一个开发工具来快速构建应用。

从上述的流程上来看,无代码编程还具有以下的特点:

  • 拖放式界面。又或者是可视化模型——基于节点和箭头
  • 基于视觉的设计。
  • 可扩展的设计。如对于插件、插件商店,社区等一系列的支持。
  • 跨平台功能。支持 PC Web 应用开发,支持移动应用构架等。
  • 强大的部署后。即平台包含着整个应用的生命周期。
  • 拥有丰富的集成支持。可以随意的找到需要的组件,以及对应的后台服务。
  • 配置化。它也意味着大量的自定义配置。
  • 自制的领域特定语言(可选)。用于构建时优化。

优缺点

相应的,它具有以下的一些特点:

  1. 高效。不用多说,节省时间和开发成本。
  2. 有限的 Bug,安全性。
  3. 低成本。其所需的预算非常有限。
  4. 易用(取决于设计)。
  5. 开发速度更快。
  6. 开发过程中的 AI 。
  7. 维护成本低。

对应的相应的缺点有:

  1. 仍然需要编程技能。
  2. 受限的自定义能力。
  3. 可扩展性成了新的问题。
  4. 集成受限。

就当前而言,低代码开发平台通常分为两大类:

  • 对于外部:制作简单的产品,如网络移动应用程序
  • 对于内部:为您的团队或企业创建业务应用程序

诸如只使用 CRUD、表单、验证、简单聚合、分页等简易的服务。最常见的例子就是表单构建了,诸如金数据这样的应用,便是可以直接通过拖拽元素来生成,相应的开源实现有 jQuery Form Builder。对于开发人员来说,我们只需要定义好数据模型,再通过拖拽来决定元素的位置即可。从这种角度来看,只要能使用 Serverless 构建的应用和服务,都可以直接使用低代码开发模式。

开发流程对比

从我们的理解来看,传统应用的开发流程是:

  1. 分析、设计、确认、规划需求
  2. 设计系统架构
  3. 搭建前后端项目。选择技术栈、从零开始搭建或者从脚手架中创建。
  4. 搭建持续集成。
  5. 创建线框图和高保真原型。
  6. 设计数据模型,定义前后端契约,即 API URI、方法、字段等。
  7. 前后端实现业务逻辑。
  8. 前端实现 UI 页面。
  9. 集成第三方后端服务。
  10. 功能需求测试(DEV、QA、ST、UAT)
  11. 跨功能需求测试(安全性、性能等)
  12. 部署到生产环境。

而,低代码开发流程:

  1. 分析、设计、确认、规划需求
  2. 选择需要的第三方 API
  3. 在可视 IDE 中绘制应用程序的工作流程、数据模型和用户界面。
  4. 连接 API——通常使用服务、函数发现。
  5. 编写业务逻辑(可选)。手动代码添加到前端或者自定义自动生成的 SQL 查询。
  6. 用户验收测试。
  7. 部署到生产环境。

从步骤上来看,无代码编程少了几个步骤。这些步骤都因为大量丰富的内部系统集成,而变得非常简单。

适用场景

就当前而言,无代码编程实际上是一种高度的场景预设的模式。因此,它存在一定的适用场景:

  • 模型驱动开发
  • 快速 UI 构建
  • 极简的业务功能。使用这样的工具,也意味着,我们对于交互和可
  • IT 资源受限。在资源受限的情况下,能快速开发出符合业务需求的应用最重要。

而从流程上来看,对于一部分的应用来说,我们并不能实现无代码编程——存在一些业务上的不同之处。因此,多数场景之下,只是实现了低代码编程

若是想真实的无代码编程,则需要一些更特定的场景:

  • 设计表格(输入数据)
  • 创建报告(组织数据)
  • 常规调度和自动化过程(操纵数据)

更多的场景正在探索中。

无代码编程的挑战

无代码编程,除了需要准备好上述的一系列基础设施,还不可避免地会遇到一系列挑战。

  • 谁来写这部分代码?
  • 客户端的基础设施准备。
  • 服务端的服务平台搭建。
  • 统一用户体验设计。设计出一系列能便利组合的组件,及对应的模板页面。与此同时,它们还能适应于不同的风格,即有多样性的主题支持。
  • DevOps 流水线设计。低代码编程,依赖于一系列的自动化工具,以实现构建、调试、部署以及维护,同时还包含应用的测试。
  • 领域语言设计。
  • 自动化测试。如果我们的前端代码是自动生成的,那么我们还需要对它们进行测试吗?这是一个好问题,而如果代码是自动生成的,那么测试也应该是自动生成的。毕竟要在平台上,编写大量的自动化测试,以保证平台的质量。

其中,有一些部分略微复杂一些,我们大概可以探索一下。

谁来写这部分代码?

在我们创建这样一个平台和工具时,我们要考虑的第一个问题是,我们这个工具是为谁写的?

  • 没有编程经验的人。如业务人员,他/她们对于业务系统有着非常丰富的经验。这也意味着,我们
  • 有编程知识,但是没有经验的人。
  • 有一定经验的开发人员。
  • 有丰富经验的开发人员。对于专业的人来说,自动化就意味着缺少灵活度。甚至与自己编写相比,他/她们要花费更多的时间来修复生成的代码。

显然,对于相当有经验的开发人员而言,这个工具并不一定是他/她们所需要的。

客户端基础设施

从我的理解来看,它适合于 快速的 MVP 构建,并且生成的代码还应该方便修改,而不是诸如早期的 DreamWeaver 或者 FrontPage 这样的工具。

而与此同时,由于面向的开发人员水平不同,我们所需要做的工具也不同:

  1. 支持云构建和调试。
  2. GUI 编程应用。
  3. 代码生成。
  4. 设计系统体系构建。组件库搭建,模板应用创建等。

更难的是,容易让开发人员能接受代码生成。

服务端

对于一个低代码平台而言,它对应的后端应该:

  1. 大量可用地现有服务。身份验证、安全性、推送能力、地图等等
  2. 快速构建出后端服务。若是有内部 Serverless 或者 FaaS 方案,可以说是再好不过了。
  3. 方便与第三方服务集成。
  4. 灵活性。支持多语言等。

统一的后端服务 API,对于后端服务来说,我们需要一个通用的范式。所有的 API 应该按照这样的范式来设计。不过,作为一个 API 的消费方,我们可能没有这么大的权力,但是我们可以采用装饰器模式,即封装第三方 API 成统一的方式。为此,我们采用的方式,仍然是:

  • 契约。诸如 Swagger UI,它可以直接创建一个简易可用的服务。
  • BFF。即我们一一去按我们的需要,去封装这些第三方应用。
  • 查询语言。与自己编写 BFF 相比,更简单的方式是采用:GraphQL 这样的后端查询语言,便捷性更高、模式更加灵活。

在开发前的设计期里,我们需要首先设计出对应的领域模型。

领域语言设计

低代码环境使用(图形)建模语言来指定整个系统、产品的行为。它意味着:

  1. 将数据结构、领域模式应用到程序的各个层级中。
  2. 将业务规则、决策融入到应用中(层级)。

这也就意味着,我们需要设计一个模型语言。而它对于我们而言,实际上是领域特定语言(DSL)。如下是一个简单的 DSL 示例,用于描述使用到的组件:

  {
    "style": "",
    "id": 2,
    "blocks": [
      {
        "content": {
          "content": "content",
          "title": "hello"
        },
        "type": "card"
      }
    ]
  }

除此,我们还需要设计对应的布局 DSL,诸如于:

H:[circle1(circle1.height)] // set aspect-ratio for circle1
HV:[circle2..5(circle1)]    // use same width/height for other circles
H:|[circle1]-[circle2]-[circle3]-[circle4]-[circle5]|
V:|~[circle1..5]~|          // center all circles vertically

最后,我们还需要将流代码,转换为真实的项目代码。三种类型的 DSL 结合下来,都不是一个轻松的工具。

原型设计

写好现有的组件,通用型接口。如常见的登录接口,。对于使用登录接口的业务来说,它们只关心三部分的内容:

  1. 成功登录。
  2. 取消登录。
  3. 登录失败。对于客户端而言,可以视为取消登录。对于服务端来说,则可能是密码错误、用户名不存在、账号被锁定等。

对应于以上情景,又有一些通用的逻辑处理:

  1. 登录成功。保存 Token,并返回历史页面。
  2. 登录失败。弹出一个自定义内容的提示框。

这些代码是相似的。

前端原型

在一些简单的前端应用里:

  • 模板。只是在使用这些模板,再为这些模板设置相应的属性,绑定对应的值。
  • 数据。其过程都只是在各种保存变量的值,并 CRUD 这些变量的路上。为此,我们需要一个数据处理的管道架构设计,用于处理这些值。
  • 函数。事实上,我们的所有函数都只是一些管理函数,只用于处理这些对应的逻辑。

这些常见的功能都可以做成一些组件,它们对于某些应用来说,代码相应的重复。

  • 无限加载页面。只需要绑定上 API,再控制一下元素的显示与隐藏即可。
  • 表单。定义好字段即类型,对应的前后台逻辑都有了。除此,我们还需要为它们自定义好常见的规则,如正则表达式。而一旦表单之间有联动,那么这个组件的设计就更加麻烦了。
  • 卡片式元素。
  • 表单和表格展示。
  • 常见图表。事实上,已经有一系列的图表工具了,我们只是在它们在基础上,进行了二次封装而已——使得它们可以变成领域语言的形式。
  • 高级的响应式布局。与每个应用独立开发布局不同的是,低代码平台需要提供一套强大的自定义、响应式布局设计——即要满足移动端的通用模式,还要满足桌面版的通用模式。如对于大量数据来说,桌面端使用的是 Pagination,移动端使用的是无限滚动。

后端原型

事实上,对于后端来说,低成本平台意味着,代码生成及服务生成。而服务本身是有限的,既然是业务上发生了一些变化,后端服务也可能并不会发生变化。

它也意味着:

  • 微服务化。每个后端服务要尽可能的小。
  • API 规范化。即采用统一的 API 格式,接受统一的权限管理
  • 大量的 API 服务。
  • 快速集成第三方服务方案。集成第三方服务是开发应用不可避免的情况。为了应对这个问题,我们需要做准备好对应的创建服务逻辑,传入第三方服务所需要的参数,便可以直接生成我们的转发服务。

那么,问题来了,既然如此,我们是否能提供一个定制的工具呢?让每个人可以创建自己的组件流?

答案,显然是可以的。

概念证明

于是乎,在我最近设计的 PoC (概念证明)里,采用的是 Anguar 框架。相应的基本思想如下:

  1. 使用 Material Design 作为组件库,使用 CDK 的 Drag 来实现拖拽功能。每个拖拽的组件,称为 element(元素),由 ElementDispatcher 由根据数据生成对应的组件。可拖拽的部分由两部分组成:布局 + 元素
  2. UI 构建完后,生成对应的 DSL,目前采用的是 JSON。毕竟数据结构是最简单的领域特定语言。
  3. 借由 Angular Schematics 解析这部分的 DSL,来生成相应的项目代码。

FAQ

接入传统后端

代理人 —— 代码生成模式

对于传统的后端应用而言,在生成前端部分的同时,只需要为后端应用生成一个服务,或者一个模块/组件的代码(controller-xx-xx),又或者是单个代码文件。如:

@RestController
class ThisWillActuallyRun {

    @RequestMapping("/")
    String home() {
        return "Hello, World!"
    }

}

这时,只需要生成一个接口,然后默认返回所需要的数据,类似于一个 Mock server。

类似的库有:https://github.com/square/javapoet

其它

相关开源项目:

参考资料:

  1. https://www.process.st/low-code/
  2. https://medium.com/@stefan.dreverman/decisions-to-take-for-your-low-code-architecture-c0768b606f
  3. https://medium.com/@stefan.dreverman/analyzing-coinmarketcap-data-with-neo4j-4930ba0068e1
  4. https://www.outsystems.com/blog/what-is-low-code.html
  5. https://medium.com/@stefan.dreverman/starting-a-low-code-application-architecture-13170fcd6fc7
  6. https://www.quora.com/What-is-low-code

More Repositories

1

github

GitHub 漫游指南- a Chinese ebook on how to build a good project on Github. Explore the users' behavior. Find some thing interest.
Rich Text Format
9,132
star
2

growth-ebook

Growth Engineering: The Definitive Guide。全栈增长工程师指南
HTML
7,688
star
3

awesome-iot

Awesome IoT. A collaborative list of great resources about IoT Framework, Library, OS, Platform
Python
4,042
star
4

ideabook

一个全栈增长工程师的练手项目集. A Growth Engineering Idea in Action.
HTML
3,729
star
5

migration

《系统重构与迁移指南》手把手教你分析、评估现有系统、制定重构策略、探索可行重构方案、搭建测试防护网、进行系统架构重构、服务架构重构、模块重构、代码重构、数据库重构、重构后的架构守护
Java
3,232
star
6

microfrontends

Micro-frontend Architecture in Action-微前端的那些事儿
3,012
star
7

prompt-patterns

Prompt 编写模式:如何将思维框架赋予机器,以设计模式的形式来思考 prompt
2,810
star
8

growth-in-action

全栈增长工程师实战
HTML
2,492
star
9

designiot

教你设计物联网系统。构建自己的Internet of Things 。
HTML
2,192
star
10

growth-ionic

[v2.0 DEPRECATED, please update to Growth 3.0] Growth - App to help you Be Awesome Developer & Awesome Hacker
TypeScript
2,158
star
11

ledge

Ledge —— DevOps knowledge learning platform. DevOps、研发效能知识和工具平台,是我们基于在 ThoughtWorks 进行的一系列 DevOps 实践、敏捷实践、软件开发与测试、精益实践提炼出来的知识体系。它包含了各种最佳实践、操作手册、原则与模式、度量、工具,用于帮助您的企业在数字化时代更好地前进,还有 DevOps 转型。
TypeScript
2,142
star
12

fe

《我的职业是前端工程师》 - Ebook:I'm a FrontEnd Developer
HTML
2,004
star
13

serverless

Serverless 架构应用开发指南 - Serverless Architecture Application Development Guide with Serverless Framework.
HTML
1,729
star
14

developer

developer roadmap. use growth https://github.com/phodal/growth replace this
Makefile
1,712
star
15

aigc

《构筑大语言模型应用:应用开发与架构设计》一本关于 LLM 在真实世界应用的开源电子书,介绍了大语言模型的基础知识和应用,以及如何构建自己的模型。其中包括Prompt的编写、开发和管理,探索最好的大语言模型能带来什么,以及LLM应用开发的模式和架构设计。
Rust
1,354
star
16

growth

Growth 3.0 with React Native - an app to help you to be Awesome Developer
JavaScript
1,231
star
17

iot

IoT, 这是一个最小Internet of Things ,一个Internet of Things相关的毕业设计产生的一个简化的物联网系统。 。
Python
1,129
star
18

booktree

A Book Tree
JavaScript
1,044
star
19

skilltree

Web Developer 技能树
JavaScript
952
star
20

ideas

Ideas of Phodal
940
star
21

articles

Article Publish in Wechat & Toutiao
Makefile
911
star
22

toolbox

Phodal's Toolbox
HTML
906
star
23

coca

Coca is a toolbox which is design for legacy system refactoring and analysis, includes call graph, concept analysis, api tree, design patterns suggest. Coca 是一个用于系统重构、系统迁移和系统分析的工具箱。它可以分析代码中的测试坏味道、模块化分析、行数统计、分析调用与依赖、Git 分析以及自动化重构等。
Go
881
star
24

mooa

Mooa 是一个为 Angular 服务的微前端框架。A independent-deployment micro-frontend Framework for Angular from single-spa.
TypeScript
841
star
25

clean-frontend

Clean Frontend Architecture:整洁前端架构
TypeScript
805
star
26

tangping

躺平即正义。Nothing is true, everything is permitted
708
star
27

repractise

RePractise
HTML
699
star
28

sherlock

Skill Tree Sherlock
JavaScript
675
star
29

lan

Internet of Things Server Layer with CoAP, WebSocket, MQTT, HTTP Protocol.
JavaScript
559
star
30

eks

嵌入式知识总汇 Embedded Knowledge Structure
552
star
31

weapp-quick

微信小应用示例代码
JavaScript
474
star
32

ebook-boilerplate

A Markdown convert to Ebook ➡️ html、mobi、epub、pdf、rtf Template
CSS
426
star
33

quake

Quake is a knowledge management meta-framework for geeks. Use meta-data + Transflow to CRUD data, Git + markdown to management content, Web Component for frontend-custom. Quake 是面向极客的知识管理元框架。
Rust
423
star
34

growth-roadmap

Growth APP' Project, Links, Blogs, Books, Resources
CSS
407
star
35

aofe.code

《前端架构:从入门到微前端》源码,code for Architecture of Frontend
JavaScript
370
star
36

new-project-checklist

🥳🥳🥳🥳 a checklist & tool for new project setup for developer. 新项目检查清单及其工具。
JavaScript
347
star
37

awesome-iot-document

Awesome IoT Documents. [Deprecated] Internet of Things Document
340
star
38

phodit

Phodal's markdown/ebook editor with MicroFrontend & Web Components
TypeScript
330
star
39

oculus-nodejs-threejs-example

Oculus + Node.js + Three.js 打造VR世界
JavaScript
296
star
40

weapp-webdemo

A Hack of Weapp Framework
JavaScript
268
star
41

dx-book

《开发者体验:探索与重塑》电子书。book of research and refactoring in developer experience (WIP)
SCSS
259
star
42

evolution

Growth:增长工程师修炼之道——读书、写作、编程
HTML
244
star
43

licenses

OpenSource License Explains
HTML
243
star
44

adr

Architecture Decision Records in Node.js with Reporter, supported Windows, GNU/Linux, macOS - 轻量级架构决策记录工具
TypeScript
240
star
45

cloud-dev

云研发,是一种生于云上的闭环 + 代码化的软件开发方式。它可以让业务人员、开发人员、运营人员等在同一个云端共同协作、透明化地完成整个软件的生命周期(需求、设计、编码、构建、部署、运营),而非相互隔离,又或者是借助于多个软件才能完成工作。
225
star
46

mole

Mole - based-git cloud note | 墨乐 - GitHub上的云笔记
JavaScript
222
star
47

techlead

Tech Lead Toolbox
TypeScript
197
star
48

make

📖📖📖📖📖 写给软件工程师看的硬件编程指南
HTML
193
star
49

fde

前端体系规划指南。Architecture of Frontend Development Efficiency
192
star
50

vmap

location:china, GitHub most popular Chinese user in Map
JavaScript
185
star
51

md

A Markdown Editor for Wechat Media Platform
JavaScript
183
star
52

aofe.images

《前端架构:从入门到微前端》原图,image for Architecture of Frontend
161
star
53

smart-home

Phodal's Smart Home Setup Guide:HomeBridge + Home Assistant + Amazon Echo
C++
152
star
54

2md

A Converter for Copy/Paste content to Markdown
JavaScript
151
star
55

trusted

10 factor to build trusted system - 构建可信系统的 10 元素
138
star
56

diaonan

MQTT协议,CoAP协议,WebSocket,物联网协议测试平台
CSS
137
star
57

frontend

《大前端:前端的扩张》
HTML
137
star
58

mifa

Mifa Design
CSS
134
star
59

wecode

A Serverless Gist Application in WeChat. 微信群里的代码协作小程序
JavaScript
125
star
60

lettuce

Mobile Framework for Romantic. 简约的移动开发框架
JavaScript
124
star
61

iot-coap

IoT Learning with CoAP Protocol
JavaScript
121
star
62

awesome-iot-projects

Awesome IoT Projects. A collaborative list of great resources about IoT Demos
112
star
63

setup.guide

前端程序员的 macOS 搭建指南
111
star
64

echoesworks

Next-Generation Tech Blog/Presentation/Slider Framework
JavaScript
109
star
65

water

Water 是开源的下一代软件架构模式,专为云研发/云开发时代设计的软件架构。由实时开发环境 + 云编译、云转译、编程语言数据库等核心要素构建的新一代软件架构模式。
98
star
66

brand

Design for Fun
Python
97
star
67

winv

A mini compatible MINA for web
CSS
91
star
68

growth-in-30-minutes

A Introduction for Growth Paper in Minutes - 真实世界的全栈工程师的十八项必备技能
91
star
69

moqi.mobi

开源移动CMS框架——墨颀移动CMS
JavaScript
86
star
70

javascript-refactor

前端工程师技能训练之重构
JavaScript
82
star
71

ascode.ink

Everything as code architecture design patten and rules。本系列文章是根据《云研发:研发即代码》一文编写的具体实现,将文档、需求、设计、代码、构建、部署、运营变成代码化。
82
star
72

phodaldev

person website
JavaScript
75
star
73

valentine

程序员情人节礼物示例, Valentine's Day Example
JavaScript
75
star
74

layer-architecture

DDD & Clean Architecture in Java, JavaScript, TypeScript, Python, Golang, Cpp
Java
70
star
75

congee

A Web Editor design for Baimizhou
JavaScript
68
star
76

stepping

Stepping - a tools for code design, event storming, domain model generate.
TypeScript
66
star
77

fed

Ebook of Frontend.《我的职业是前端工程师》姐妹篇《前端进阶指南》
HTML
61
star
78

daily

日常练习
CSS
61
star
79

moform

A Serverlesss form builder
JavaScript
58
star
80

dore

React Native-base Hybrid Framework, for migrating Cordova and WebView application to React Native.
JavaScript
55
star
81

growth-code

The Source Code of Growth Paper - 《全栈应用开发:精益实践》源码
Python
55
star
82

summary

Awesome articles, tools, OS project, design of Phodal - collections in path of Phodal's way for new geek & nerd to quick growth
51
star
83

skillwheel

A Skill List for Web Developer
CSS
51
star
84

dou2

一份面向残疾地区的,简单的无障碍上网指南
50
star
85

ionic-elasticsearch

Django ElasticSearch Ionic 打造 GIS 移动应用
JavaScript
49
star
86

awesome-practise-project

Awesome Practise Project
JavaScript
47
star
87

backbone-react

Backbone React in Practice
JavaScript
47
star
88

oan

Another Web Components Framework . A Spike of Web Components Design
TypeScript
45
star
89

mopass

A OpenSource Clientless & Serverless Password Manager
JavaScript
42
star
90

designiot-app

Internet of Things APP
JavaScript
42
star
91

django-elasticsearch

Django ElasticSearch Ionic 打造 GIS 移动应用
JavaScript
41
star
92

awesome-smart-speaker

A Awesome List for Smart Speaker(智能音箱)
41
star
93

growth-in-action-code

Growth In Action Django Code
Python
40
star
94

componentless

Componentless is a architecture pattern which is means component as a services. 无组件(Componentless)架构是一种架构模式,它是指大量依赖于三方组件(运行时依赖的组件而非编译时依赖的组件,即编译即服务)或暂存容器中运行的自定义代码的前端应用。
39
star
95

romantic

待我代码编成,娶你为妻可好
JavaScript
38
star
96

thesis

TeX
36
star
97

design

Design as Code, a DSL for UX & backend modeling. DSL to Sketch file, Sketch to DSL, DSL to code.
Go
36
star
98

designiot-code

Source Code of Design IoT
JavaScript
31
star
99

mooa-boilerplate

microfrontends framewrok mooa's boilerplate.前端微服务化框架 Mooa 脚手架示例
TypeScript
30
star
100

mest

契约测试框架。A TypeScript Contract Test for Interface base project.
TypeScript
29
star