Pushup v0.1 预览版发布,Go Web 框架


Pushup 发布了首个 Preview 版本:0.1。

Pushup 是一个实验性的新项目,使用 Go 创建现代、面向页面的 Web 应用。Pushup 旨在探索使用 Go 轻松构建面向页面的服务器端 Web 应用程序。

此版本目前初步实现了以下功能:

  • 固定的 project/app 目录结构,支持基于文件的路由 (file-based routing)
  • 可替代传统 Web 框架目标的轻量级标记语法 (lightweight markup),将用于控制流的 Go 代码和命令式、类似视图控制器的代码与 HTML 标记相结合
  • 解析上述标记语法并生成纯 Go 代码的编译器 (compiler),在 Go stdlibnet/http 包之上构建独立的 Web 应用程序

示例代码

^import "time"

^{
 title := "Hello, from Pushup!"
}

<h1>^title</h1>

<p>The time is now ^time.Now().String().</p>

^if time.Now().Weekday() == time.Friday {
<p>It's Friday! Enjoy the start to your weekend.</p>
} ^else {
<p>Have a great day, we're glad you're here.</p>
}

File app/pages/hello.up → /hello URL path

Pushup 示例应用的目录结构

/path/to/mypushupapp
├── layouts
│   └── default.up
├── pages
│   └── index.up
├── pkg
│   └── app.go
└── static
├── app.css
└── htmx.min.js

详情查看 Release Notes。

 


相關推薦

2023-08-24

Fixed 修复特定字符可能会破坏文件路径的问题 Enhancements 为SFTP新增一些集成测试 支持软链接本身的同步 实现通过文件查询接口获取链接信息 新增go1.21支持 移除go1.19支持 新增symlink动作 为FileInfo结构新增LinkTo字

2023-06-19

tssh v0.1.3 发布,支持指定多个私钥,支持使用密码保护的私钥。 GitHub:https://github.com/trzsz/trzsz-ssh Gitee:https://gitee.com/trzsz/tssh 你是否曾经因为服务器太多记不住,而喜欢的 ssh 终端又没有服务器管理功能而苦恼? tssh 支持选

2023-07-12

【 用 go 的 ssh 客户端 】tssh 发布 v0.1.6,解决了 known hosts 的问题,支持更多类型的私钥( 含密码 )。 GitHub:https://github.com/trzsz/trzsz-ssh Gitee:https://gitee.com/trzsz/tssh 安装方法 客户端安装 trzsz-ssh ( tssh ) 的方法

2023-07-24

Go 实现的 ssh 客户端,发布 v0.1.8 新版本,支持批量登录,批量执行指定的命令。 GitHub:https://github.com/trzsz/trzsz-ssh Gitee:https://gitee.com/trzsz/tssh 目前支持在 tmux 和 Windows Terminal 中一次选择多台服务器,批量登

2022-07-18

了一份提案:建议推出基于 Web 的 Anaconda 安装程序的公开预览版。 这项变更提案仍然需要得到 Fedora 工程和指导委员会 (FESCo) 的正式批准,不过既然这是 Red Hat 正在开发的试验性功能,因此 Fedora 37 会保持提供预览版的节奏。目

2023-07-19

Go 实现的 ssh 客户端,发布 v0.1.7 新版本,升级 trzsz ( trz / tsz ) 到 1.1.4 版本,支持断点续传,进一步优化了传输速度和使用体验: 1 、如果传输发生中断,或者传完后文件有修改,再使用 trz -y 上传,或者使用 tsz -y xx

2023-07-05

trzsz-ssh ( tssh ) 发布 v0.1.5,新版本支持记住密码、记住 keyboard interactive 的答案自动登录。 你是否曾经因为服务器太多记不住,而喜欢的 ssh 终端又没有服务器管理功能而苦恼? tssh 支持选择( 搜索 ) ~/.ssh/config 中配

2024-08-28

【 基于 UDP 的 ssh 】tsshd 发布 v0.1.3,支持自定义端口。 GitHub:https://github.com/trzsz/tsshd 优点简介 降低延迟( 基于 QUIC / KCP ) 端口转发( 与 openssh 相同,包括 ssh agent 转发和 X11 转发 ) [TODO] 连接

2024-07-02

【 低延迟的 ssh 】tsshd 发布 v0.1.1,支持 QUIC 协议,修复 KCP 协议挂起的问题。 优点简介 低延迟( 基于 QUIC / KCP ) 端口转发( 与 openssh 相同 ) 如何使用 在客户端(本地电脑)上安装 tssh。 在服务端(远

2024-07-09

【 低延迟的 ssh 】tsshd 发布 v0.1.2,支持 X11 转发和 ssh agent 转发。 优点简介 降低延迟( 基于 QUIC / KCP ) 端口转发( 与 openssh 相同,包括 ssh agent 转发和 X11 转发 ) [TODO] 连接迁移( 支持网络切换

2023-07-04

序的开发能力。现在好了,Go语言通用代码生成器仙童已发布Beta7版,光速开发Go Web应用程序可以助力您找到Go语言的职位。 如何使用?您可以使用仙童自带的模板或者自己写一个SGS2的Excel模板,并使用仙童生成一个完整的Go Web

2024-07-18

经过一年的预览,MacDriver 0.5.0 终于发布了,此版本开始,项目更名为 DarwinKit。 此版本主要变化内容如下: 新增对 33 个框架的绑定 当前已有超过 2,300 个类,几乎完全覆盖 mac 开发应用的所有情况。对比一下,0.4.0

2022-05-25

用 go 实现类似 rz / sz 上传和下载的功能,trzsz-go 发布了 v0.1.4 版本,支持在 windows 的 cmd 中使用。 在 windows 的 cmd 使用示例: 在 Ubuntu 原生终端使用示例:

2022-09-11

编译器和 LXQt 1.1、用于新安装程序的 Anaconda Web UI 的公共预览版、对 Raspberry Pi 4 的官方支持,以及提供参考 KVM VM 磁盘镜像。 Fedora 37 Beta 将于下周二(9月13日)正式发布。或者如果你急于在这个周末尝试,已经有宣布准备好