项目结构
最后更新于:2022-04-01 22:20:45
# 项目结构
深入挖掘UIkit的核心,了解关于它的一切。
## GitHub
UIkit被托管在 [GitHub](https://github.com/uikit/uikit) 上,基于 [MIT 许可协议](http://opensource.org/licenses/MIT)。 欢迎使用它应用于个人或商业项目。想要获取 UIKit 所有的源文件,只需克隆 [GitHub](https://github.com/uikit/uikit) 上的资源库,或者直接下载最新的版本。
[下载源代码](https://github.com/uikit/uikit/archive/master.zip)
* * *
## 文件结构
UIkit 基于[LESS](http://www.lesscss.net/)创建,LESS是一款CSS预处理器,将 CSS 赋予了动态语言的特性,如变量,继承,运算,函数等。它将写入LESS中的代码编译成为CSS。它将写在Less里的代码编译成CSS。UIkit主要的文件结构如下:
| 文件夹 | 描述 |
| --- | --- |
| `/docs` | 包含你正在看的UIkit文档的绝大多数文件 |
| `/src` | 包含全部Less和JavaScript组件文件 |
| `/tests` | 包含所有组件的测试文件 |
| `/themes` | 在子文件夹中包含的所有额外提供的主题文件。 |
| `/vendor` | 包含UIkit所使用的jQuery和其他的外部库。 |
所有编译版和压缩版CSS文件、JS文件,以及Less和Sass文件都能在独立的 [Bower UIkit repository](https://github.com/uikit/bower-uikit) 项目中找到。查看 [Less 和 Sass 文件](documentation_less-sass.html) 获取更多信息。
* * *
## 自动地预处理
为了自动化处理Less文件编译成为CSS的过程,我们使用 [Gulp](http://gulpjs.com/),一款基于 [Node.js](http://nodejs.org/) 的前端构建工具,它监控你的工作目录。无论何时,只要你保存了有修改行为的源文件,Gulp都会自动地将所有文件编译成独立的CSS文件。
首先,你需要安装Node,并设置 `gulp` 作为一个全局的安装。最后,切换到UIkit目录,安装Node依赖模块(Node dependencies)。
```
npm install -g gulp
cd uikit
npm install
```
现在,你可以运行Gulp来创建和修改版本。UIkit的内置版本被放在 `/dist` 目录中。通过主题名称参数来只创建一个指定的主题。
```
gulp [-t themename]
```
你也可以设置Gulp监控你的工作目录,这样它便能在你每次保存时,自动地编译文件。通过主题名称参数来监控一个指定的主题以提升建设进度。
```
gulp watch [-t themename]
```
加载新的主题和样式到定制工具中。
```
gulp indexthemes
```
* * *
## 测试
UIkit为每个组件提供测试文件。其中每个页面都包含了组件的测试示例,并为你提供了一个关于盒模型所支持的所有可能性的总览。
UIkit 使用 [BrowserSync](http://www.browsersync.io/) 加速你的工作流程。运行 `gulp sync` ,你就能在制作自己的主题或者修改现有主题时,即时地查看改动,这不只是在浏览器中,还支持跨设备。你能在测试中切换所有的组件和主题,甚至切换到RTL模式(从右到左)
[前往测试](../tests/overview.html)
';