Skip to content

Commit 3650a4e

Browse files
author
pedro
committed
init:发布测试版
0 parents  commit 3650a4e

36 files changed

Lines changed: 2852 additions & 0 deletions

.gitignore

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
logs/
2+
npm-debug.log
3+
yarn-error.log
4+
node_modules/
5+
package-lock.json
6+
yarn.lock
7+
coverage/
8+
.idea/
9+
run/
10+
suspect/
11+
.DS_Store
12+
*.sw*
13+
*.un~
14+
.vscode/
15+
dist
16+
learn
17+
tokens.json
18+
abandon
19+
lin/

.npmignore

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
.vscode
2+
.idea
3+
learn
4+
node_modules
5+
lib
6+
dist
7+
tests
8+
package-lock.json
9+
tsconfig.json
10+
tslint.json
11+
jest.config.js
12+
.eslintrc.js
13+
.eslintignore
14+
.editorconfig
15+
.gitignore
16+
yarn.lock
17+
learn
18+
abandon

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2019 TaleLin
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,118 @@
1+
<h1 align="center">
2+
<a href="http://doc.cms.7yue.pro/">
3+
<img src="http://doc.cms.7yue.pro/left-logo.png" width="250"/></a>
4+
<br>
5+
Lin-CMS-Koa-Core (测试版)
6+
</h1>
7+
8+
<h4 align="center">一个简单易用的CMS后端项目 | <a href="http://doc.cms.7yue.pro/" target="_blank">Lin-CMS-Koa的核心库</a></h4>
9+
10+
<p align="center">
11+
<a href="http://flask.pocoo.org/docs/1.0/" rel="nofollow">
12+
<img src="https://img.shields.io/badge/koa-2.7.0-green.svg" alt="flask version" data-canonical-src="https://img.shields.io/badge/koa-2.7.0-green.svg" style="max-width:100%;"></a>
13+
<a href="http://doc.cms.7yue.pro/" rel="nofollow"><img src="https://img.shields.io/badge/license-MIT-lightgrey.svg" alt="LISENCE" data-canonical-src="https://img.shields.io/badge/license-MIT-lightgrey.svg" style="max-width:100%;"></a>
14+
</p>
15+
16+
<blockquote align="center">
17+
<em>Lin-CMS</em> 是林间有风团队经过大量项目实践所提炼出的一套<strong>内容管理系统框架</strong>。<br>
18+
Lin-CMS 可以有效的帮助开发者提高 CMS 的开发效率。
19+
</blockquote>
20+
21+
<p align="center">
22+
<a href="#简介">简介</a>&nbsp;|&nbsp;<a href="#快速开始">快速开始</a>&nbsp;|&nbsp;<a href="#下个版本开发计划">下个版本开发计划</a>
23+
</p>
24+
25+
## 简介
26+
27+
### 什么是 Lin CMS?
28+
29+
Lin-CMS 是林间有风团队经过大量项目实践所提炼出的一套**内容管理系统框
30+
**。Lin-CMS 可以有效的帮助开发者提高 CMS 的开发效率。
31+
32+
### 起步项目
33+
34+
[https://github.com/TaleLin/lin-cms-koa](https://github.com/TaleLin/lin-cms-koa)
35+
36+
### 文档地址
37+
38+
[http://doc.cms.7yue.pro/](http://doc.cms.7yue.pro/)
39+
40+
### 线上 demo
41+
42+
[http://face.cms.7yue.pro/](http://face.cms.7yue.pro/)
43+
44+
### QQ 交流群
45+
46+
QQ 群号:699501172
47+
48+
<img class="QR-img" width="258" height="300" src="http://imglf4.nosdn0.126.net/img/Qk5LWkJVWkF3NmlPcDV2NjJvR2dFYU90R0ZuS2g1STZVa1NhOWN2YVhrUnFXdmJVRk5LQ1FnPT0.jpg?imageView&thumbnail=500x0&quality=96&stripmeta=0&type=jpg">
49+
50+
### 微信公众号
51+
52+
微信搜索:七月有风
53+
54+
<img class="QR-img" src="http://imglf6.nosdn0.126.net/img/YUdIR2E3ME5weEdlNThuRmI4TFh3UWhiNmladWVoaTlXUXpicEFPa1F6czFNYkdmcWRIbGRRPT0.jpg?imageView&thumbnail=500x0&quality=96&stripmeta=0&type=jpg">
55+
56+
### Lin CMS 的特点
57+
58+
Lin CMS 的构筑思想是有其自身特点的。下面我们阐述一些 Lin 的主要特点。
59+
60+
#### Lin CMS 是一个前后端分离的 CMS 解决方案
61+
62+
这意味着,Lin 既提供后台的支撑,也有一套对应的前端系统,当然双端分离的好处不仅仅
63+
在于此,我们会在后续提供`NodeJS``PHP`版本的 Lin。如果你心仪 Lin,却又因为技术
64+
栈的原因无法即可使用,没关系,我们会在后续提供更多的语言版本。为什么 Lin 要选择
65+
前后端分离的单页面架构呢?
66+
67+
首先,传统的网站开发更多的是采用服务端渲染的方式,需用使用一种模板语言在服务端完
68+
成页面渲染:比如 JinJa2、Jade 等。服务端渲染的好处在于可以比较好的支持 SEO,但作
69+
为内部使用的 CMS 管理系统,SEO 并不重要。
70+
71+
但一个不可忽视的事实是,服务器渲染的页面到底是由前端开发者来完成,还是由服务器开
72+
发者来完成?其实都不太合适。现在已经没有多少前端开发者是了解这些服务端模板语言的
73+
,而服务器开发者本身是不太擅长开发页面的。那还是分开吧,前端用最熟悉的 Vue 写 JS
74+
和 CSS,而服务器只关注自己的 API 即可。
75+
76+
其次,单页面应用程序的体验本身就要好于传统网站。
77+
78+
#### 框架本身已内置了 CMS 常用的功能
79+
80+
Lin 已经内置了 CMS 中最为常见的需求:用户管理、权限管理、日志系统等。开发者只需
81+
要集中精力开发自己的 CMS 业务即可
82+
83+
#### Lin CMS 本身也是一套开发规范
84+
85+
Lin CMS 除了内置常见的功能外,还提供了一套开发规范与工具类。换句话说,开发者无需
86+
再纠结如何验证参数?如何操作数据库?如何做全局的异常处理?API 的结构如何?前端结
87+
构应该如何组织?这些问题 Lin CMS 已经给出了解决方案。当然,如果你不喜欢 Lin 给出
88+
的架构,那么自己去实现自己的 CMS 架构也是可以的。但通常情况下,你确实无需再做出
89+
架构上的改动,Lin 可以满足绝大多数中小型的 CMS 需求。
90+
91+
举例来说,每个 API 都需要校验客户端传递的参数。但校验的方法有很多种,不同的开发
92+
者会有不同的构筑方案。但 Lin 提供了一套验证机制,开发者无需再纠结如何校验参数,
93+
只需模仿 Lin 的校验方案去写自己的业务即可。
94+
95+
还是基于这样的一个原则:Lin CMS 只需要开发者关注自己的业务开发,它已经内置了很多
96+
机制帮助开发者快速开发自己的业务。
97+
98+
#### 基于插件的扩展
99+
100+
任何优秀的框架都需要考虑到扩展。而 Lin 的扩展支持是通过插件的思想来设计的。当你
101+
需要新增一个功能时,你既可以直接在 Lin 的目录下编写代码,也可以将功能以插件的形
102+
式封装。比如,你开发了一个文章管理功能,你可以选择以插件的形式来发布,这样其他开
103+
发者通过安装你的插件就可以使用这个功能了。毫无疑问,以插件的形式封装功能将最大化
104+
代码的可复用性。你甚至可以把自己开发的插件发布,以提供给其他开发者使用。这种机制
105+
相当的棒。
106+
107+
#### 前端组件库支持
108+
109+
Lin 还将提供一套类似于 Vue Element 的前端组件库,以方便前端开发者快速开发。相比
110+
于 Vue Element 或 iView 等成熟的组件库,Lin 所提供的组件库将针对 Lin CMS 的整体
111+
设计风格、交互体验等作出大量的优化,使用 Lin 的组件库将更容易开发出体验更好的
112+
CMS 系统。当然,Lin 本身不限制开发者选用任何的组件库,你完全可以根据自己的喜好/
113+
习惯/熟悉度,去选择任意的一个基于 Vue 的组件库,比如前面提到的 Vue Element 和
114+
iView 等。你甚至可以混搭使用。当然,前提是这些组件库是基于 Vue 的。
115+
116+
#### 完善的文档
117+
118+
我们将提供详尽的文档来帮助开发者使用 Lin

jest.config.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
module.exports = {
2+
preset: 'ts-jest',
3+
testEnvironment: 'node'
4+
};

0 commit comments

Comments
 (0)