1.0.7 • Published 2 years ago

float-site-manager v1.0.7

Weekly downloads
-
License
GPL-3.0
Repository
-
Last release
2 years ago

说明

这个项目是在 Github 上面的。见 https://github.com/floatingblocks/float-site-manager-npm

组成

主要分成主页,索引页和内容页

主页展示一些最基础的导航,要试着加上一些看起来比较 geek 的元素,用来炫技

索引页有两种:分类页和标签页。这两种都使用卡片的方式展示子连接。

其中,分类页是用一个 JS 在同一页面进行不同分类的切换,标签页通过一个标签索引页来导航到不同的标签。

内容页也有两种:子页面和子网站。

子页面是一个单个 HTML,只有一部分内容,会被放在内容模板的 content 里面。也可以有一些资源文件。

子网站就相当于一个独立网站,具有完全的功能

使用的技术

前端是原生的 HTML CSS JS 技术,后端使用 NodeJS 程序加上 ejs 模板进行部署。

文件结构

infos.json

包含很多关于当前页面信息的 json,包括了:

  • type
  • name
  • auther
  • categorie
  • tags
  • description
  • date

以后也会可能加上一些新的东西。

部署流程

遍历 source 文件夹的所有文件,对于每个 page 生成对应子目录下的 HTML。

按照每个 page 或者 site 的 infos.json 对它属于的归档页面和标签页面进行生成。

之后把生成的文件写到 public 文件夹当中,再复制拿些不用生成的文件(page 中除了 HTML 的资源,site 的全部)。

把这些文件 hash 都记录到 fileRecord.json 当中。

最后,使用 git 对 public 文件夹中的东西进行 push 到对应的 pages 上面。

更新

首先读取所有的文件,判断文件的变更情况(使用一个 fileRecord.json 来记录 src 文件夹中每个文件名和对应的 Hash 值),对于变更或者新增的文件对应的 HTML 和索引都进行更新。具体变化有:

  • public 文件夹下对应 HTML(page.html)
  • 对应的标签或者模板(infos.json)
  • 或者直接对应的文件(不是前面提到的)

接着把新生成的文件覆盖掉 public 文件夹中的对应文件,并且修改 fileRecord.json。

使用

暂且命名为 float-site-manager 。主要命令目前就只有这么几个

float-site-manager new page [name]
float-site-manager new site [name]
float-site-manager generate
float-site-manager clean
float-site-manager deploy

generate 就是生成对应的。然后 clean 直接删掉 public 和 fileRecord.json。deploy 是上传到 github。

1.0.7

2 years ago

1.0.6

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago