通用静态网站生成器
statik的Python项目详细描述
概述
statik旨在成为一个简单但功能强大的通用静态网站 发电机。而不是强迫你坚持特定的数据 结构/模型(类似于标准的blog数据模型,包含文章、页面 和标记),statik允许您在yaml中定义自己的数据模型 以yaml或markdown格式以及这些数据模型的实例。 这些都被载入内存 SQLAlchemy当 呈现您的视图。
然后,使用 Jinja2模板引擎(非常类似于 django模板引擎),或 Mustache模板。
最后,以yaml格式定义您的views(复杂或简单)。 告诉statik如何将数据和模板呈现到特定的 闪亮的新静态网站的URL。在中为视图编写查询 sqlalchemy的ORM syntax,或 MLAlchemy使 生活更轻松。
有关更多信息,请参见wiki 细节。
要求
要安装statik,您需要:
- python 2.7+或python 3.5+
- pip或easy_install
安装
只需运行以下命令:
> pip install statik
要升级,请运行以下命令:
> pip install --upgrade statik
用法
要在当前目录中生成项目,请将输出文件写入 当前目录中的public目录:
> statik
若要在其他目录中生成项目,请将输出文件写入 public目录中的目录:
> statik -p /path/to/project/folder
在另一个目录中生成项目,并控制 放置输出文件:
> statik -p /path/to/project/folder -o /path/to/output/folder
项目快速启动
要创建具有所需项目结构的空项目文件夹, 只需运行:
> statik -p /path/to/project/ --quickstart
统计项目
statik项目必须遵循以下目录结构:
config.yml - YAML configuration file for the overall project. assets/ - Static assets for the project (images, CSS files, scripts, etc.). Ignored if themes are used. data/ - Instances for each of the different models, defined either in YAML or Markdown format. models/ - A folder specifically dedicated to model definitions, in YAML format. templates/ - Jinja2 template files. Ignored if themes are used. templatetags/ - Python scripts defining custom Jinja2 template tags and filters. themes/ - If your project uses themes, place them here. Each theme must be uniquely named, and must contain an "assets" and "templates" folder. views/ - Configuration files, in YAML format, defining "recipes" for how to generate various different URLs (which models to use, which data and which templates).
例如项目,请参见源代码中的examples目录 储存库。有关更多信息,请参见 wiki。
主题
statik的主题将慢慢开始出现在Statik Themes存储库中。 注意那个地方!
许可证
MIT许可证(MIT)
版权所有(c)2016-2018 Thane Thomson
特此免费向任何获得 本软件和相关文档文件的副本 “软件”),无限制地处理软件,包括 但不限于使用、复制、修改、合并、发布, 分发、再授权和/或出售软件副本,以及 允许向其提供软件的人员这样做,但须遵守 以下条件:
上述版权公告及本许可公告须包括在内 在软件的所有副本或大部分中。
软件按“原样”提供,不作任何形式的保证 或默示的,包括但不限于 适销性、适合特定目的和不侵权。 在任何情况下,作者或版权持有人均不对任何 索赔、损害赔偿或其他责任,无论是在合同诉讼中, 侵权行为或其他,由 软件或软件中的使用或其他交易。