跳转到主要内容

AbFab for Plone

项目描述

这是实现AbFab for Plone的服务器端插件。

它需要在客户端安装https://github.com/ebrehault/abfab-volto

为什么?这是为了什么?

AbFab的主要目标是提供一种使前端变得简单、有趣和愉快的方法。

客户端技术确实可以改善用户体验,但它们不应该损害开发者体验。捆绑不是可扩展的,向现有应用程序添加新页面不应该涉及重新部署整个系统。

AbFab不是旨在覆盖数千个用例的巨大框架。它针对可能以更传统方式实现的小功能。

AbFab是一个一站式平台,允许开发简单的前端组件,可以在任何地方发布。

描述

AbFab 是一个网络应用程序发布环境。它提供了任何网络应用程序所需的必要服务

  • 一个安全且快速的后端存储,

  • 一个简洁而强大的前端组件框架(Svelte),

  • 一个轻量级的 JavaScript 运行时,提供路由和后端连接。

组件是用 Svelte 编写的,它们在浏览器中编译(您不需要本地的 NPM),存储在 Plone 网站中(在汤中,见 https://pypi.ac.cn/project/souper.plone/),并且可以作为网页组件发布到任何页面。

简单的事情必须简单

没有捆绑和静态文件:您不需要使用 NPM,您不需要捆绑您的代码。所有组件和数据都在服务器上,无需生成和部署静态文件。

代码拆分:每个组件都是自动和独立编译的,您的应用中的每一页只会加载所需的组件。

客户端导航:从一个页面导航到另一个页面是通过仅加载缺失的数据并在客户端渲染它来完成的,因此应用始终快速。它表现得像一个单页应用,但它不是。

组件方法:组件是结构化应用的有效方式(实际上 HTML 也是这样构建的)。您应该能够在 SPA 模式之外使用它们。

您需要学习新技术吗?不用了 :)

低代码:要开发 AbFab 应用,您只需要 HTML、CSS 和(简单的)JavaScript。Svelte 可以被视为一个模板层,它非常简单易学易用,不会成为障碍。

低部署:AbFab 不仅仅是一个前端解决方案,它还带有后端功能,您的组件直接存储在网站上。

低构建:可以直接从 AbFab 在线界面开发组件。无需 NPM,无需捆绑。

安装

  • 使用 pip 安装 abfab.plone

    $ pip install abfab.plone

    或使用 buildout

    [buildout]
    
    ...
    
    eggs =
        abfab.plone

    然后运行 bin/buildout

  • zope.conf 中提高上传最大大小限制

    <dos_protection>
        form-memory-limit 4MB
    </dos_protection>

请参阅 abfab-volto 的 README 中的其余安装说明 https://github.com/ebrehault/abfab-volto#installation

作者

埃里克·布雷豪

灵感

黛恩·弗朗斯、詹妮弗·萨瑟兰和乔安娜·卢姆利。

贡献

许可证

本项目采用 GPLv2 许可。

贡献者

变更日志

1.0.2 (2023-10-28)

  • 修复权限检查。[ebrehault]

1.0.1 (2023-10-03)

  • 清理。[ebrehault]

1.0a2 (2023-10-03)

  • 检查权限。[ebrehault]

1.0a1 (2023-09-20)

  • 首次发布。[ebrehault]

由以下支持

AWSAWS 云计算和安全赞助商DatadogDatadog 监控FastlyFastly CDNGoogleGoogle 下载分析MicrosoftMicrosoft PSF赞助商PingdomPingdom 监控SentrySentry 错误日志StatusPageStatusPage 状态页面