尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
openGym卡片视图与列表视图之争:训练界面设计演进
openGym卡片视图与列表视图之争训练界面设计演进【免费下载链接】openGymSelf-hosted gym body-weight tracker — plan routines, log workouts (supersets, warm-ups, cardio), see which muscles are trained, fatigued or detrained, import from FitNotes/Strong/Hevy, passkey login. Your data, your server.项目地址: https://gitcode.com/GitHub_Trending/op/openGymopenGym 是一款自托管的健身与体重追踪应用gym body-weight tracker可以规划训练计划、记录组次、查看肌肉负荷而数据完全存放在你自己的服务器上。它的训练界面围绕一场视图之争不断演进一次一个动作的卡片视图还是整场训练铺开的列表视图本文带你看懂三种训练界面设计的来龙去脉以及该如何为不同的训练场景做出选择。为什么训练界面设计值得单独讨论健身房里的应用屏幕设计比什么都重要——你的手指上沾着镁粉注意力应该在杠铃上而不是跟按钮较劲。openGym 的训练页源码位于 frontend/src/views/Workout.jsx经历了从按钮越堆越多到界面越来越安静的完整过程最终演进出三种布局视图你看到的适合谁卡片视图cards默认一次只显示一个动作用 Prev / Next 或左右滑动切换喜欢专注、不想被干扰的训练者列表视图list整个训练会话所有动作纵向堆叠、可滚动当前动作高亮描边想随时扫一眼还剩什么的人紧凑视图compact列表的极简版只留动作名和组次行隐藏媒体、标签、历史回顾等信息追求最低视觉噪音、快速记数的人卡片视图一次只做一件事卡片视图是 openGym 最原始的交互流程也是默认视图屏幕中央只放当前这一个动作完成最后一组后自动进入下一个也可以点 Prev / Next 或滑动手指切换。它的核心逻辑是当前标记current marker——同一份会话数据s.active无论哪种视图标记始终指向你现在正在练的动作完成组次后自动推进并触发休息计时。这意味着从列表视图点一下Set current就能立刻回到卡片流两种模式随时互不丢失状态相关实现在 frontend/src/views/Workout.jsx。适合场景️ 训练动作不多4–6 个、每组都要认真打勾计时手机单手操作不想来回滚动找位置第一次用 openGym、想先熟悉流程的新手列表视图整场训练一眼到底列表视图在 v1.3.2 版本加入整个会话的所有动作堆叠成一页可滚动内容当前动作带描边高亮其他动作的头部会多出一枚Set current设为当前按钮点一下就把当前标记移过去。超级组superset会被归成一组还带独立的取消配对操作。此后列表视图持续打磨几个关键演进值得记住头部固定v1.3.3——训练名、计时器、组数计数、完成按钮钉在顶部滚动内容不遮挡滚动位置记忆——重新打开训练时直接定位到你正在练的动作而不是回到顶部切换不影响进行中的训练——设置里改的是默认视图会话创建时会把当时的默认值快照下来s.active.workoutView所以训练中途改设置不会打乱眼前界面这个机制的详细说明见开发文档 docs/dev/LIST_VIEW.md。适合场景 动作多的长训练如全身日 8 个动作需要随时预览接下来是什么需要边练边微调顺序、临时跳着练的用户Compact 紧凑视图把噪音降到最低Compact 是 v1.3.5 加入的第三种视图本质是更狠的列表每个动作块以密集模式渲染——不显示媒体动画、标签有氧/单侧/目标重量/器械、笔记行、上次……回顾、杠铃配重芯片、渐进指导行。剩下的只有动作名、⋯ 菜单、组次行。被藏起来的功能并没有消失全部收进每个动作的 ⋯ 菜单里详情、历史、渐进设置等想看随时可查。一个贴心细节旧资料里没有这个字段时会自动按 cards 处理所以升级后你的设置不会被意外改变。三种视图怎么切换两个入口1. 改默认视图全局进入设置 → During a workout训练中→ Workout view一个三段选择器Cards / List / Compact对之后开启的所有训练生效。设置项源码在 frontend/src/views/Settings.jsx。2. 改当前这次训练会话级训练进行中的页面头部有一个⋮ 按钮弹出菜单里直接三选一。它只改写当前会话不动你的默认值——这正是进行中的训练不被打扰的保证快照逻辑见 frontend/src/sheets.jsx。与视图选择正交的还有Workout controls训练控制项开关默认是精简模式移动/交换/删除、步进器都收在各动作的 ⋯ 菜单里开启exerciseButtons后才会把 Move / Swap / Remove 等按钮排回界面。换句话说视图管看什么控件开关管露出哪些按钮两者可以独立搭配。设计演进从按钮战争到安静的训练屏把 CHANGELOG.md 按时间轴摊开能清楚看到这场设计之争的脉络v1.3.2 列表视图首次登场社区贡献与卡片视图并列可选v1.3.3 大改版每个动作只留一个 ⋯ 菜单组次数字本身就是该组的菜单删组、drop-set、rest-pause 都从组号进去列表视图头部固定新增Workout controls四个开关找回旧按钮v1.3.5✂️ Compact 布局加入⋮ 会话级三视图切换器就位其后 细节打磨列表视图记忆滚动位置、Set current一键回到卡片流、滑动时预览下一张卡片这条演进路径背后是一个清晰的设计立场默认把界面做安静把选择权交还用户。旧样式没有被删掉而是被收纳成可开关的选项——这正是开源健身工具该有的克制。数据归你视图只是表皮数据才是根本无论你怎么切换视图底层始终是同一份纯数据计划、训练记录、体重和设置都作为 JSON 存在你自己机器上的./data目录里state-user.json备份整个目录就等于备份一切。多设备之间通过带修订号revision的同步机制合并而不是互相覆盖也就是说卡片党还是列表党并不重要——换设备、换视图、甚至从 FitNotes / Strong / Hevy 导入旧数据你的训练历史都完整保留。更多自托管细节可参考 docs/SELF_HOSTING.md。如何选择给新手的快速建议刚开始用→ 保持默认卡片视图先建立完成一组→自动推进→休息计时的肌肉记忆动作多、爱跳练→ 切列表视图用 Set current 自由跳转只想快速记数字→ 上Compact界面只剩名字和组次干扰最小⏱️同一天想换手感→ 直接用训练头部的 ⋮ 切换不动全局默认界面之争没有输家openGym 的三种视图共享同一份会话数据与完成逻辑差异只在渲染什么。选最合手的一种然后放心去练——毕竟好的训练界面最好的状态就是你几乎感觉不到它的存在。【免费下载链接】openGymSelf-hosted gym body-weight tracker — plan routines, log workouts (supersets, warm-ups, cardio), see which muscles are trained, fatigued or detrained, import from FitNotes/Strong/Hevy, passkey login. Your data, your server.项目地址: https://gitcode.com/GitHub_Trending/op/openGym创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

marketingskills:用AI agents编排SEO与CRO的营销技能库

marketingskills:用AI agents编排SEO与CRO的营销技能库

1. 从“marketingskills”说起:一个被低估的增长工具箱第一次看到marketingskills这个词,是在一个做独立站的朋友群里。有人甩了个链接,说“这套东西把 SEO 和 CRO 的活儿全串起来了”。我当时的第一反应是:又是一个包装概念。但点…

📅 2026/10/8 0:44:09
GTX 1660Ti 6GB老卡本地部署Qwen-Image-2.1:量化+Ollama实战全记录

GTX 1660Ti 6GB老卡本地部署Qwen-Image-2.1:量化+Ollama实战全记录

别的不说,先给结论:GTX 1660Ti这块6GB显存的老卡,确实能本地跑Qwen-Image-2.1,但前提是你愿意接受量化、接受合理调参、接受它不是“全精度尊享版”。这篇文是我把手头这台老主机从“装不下”折腾到“能出图、能接API、能挂进Dify…

📅 2026/10/8 0:44:09
text-to-cad工程落地实战:从语义解析到URDF/DXF生成

text-to-cad工程落地实战:从语义解析到URDF/DXF生成

1. 这不是“文字变图纸”的魔法,而是工程语义落地的硬功夫“text-to-cad”这个词最近在工程师群、机器人开发论坛和工业软件讨论区里频繁冒头,但它绝不是AI绘画那种“输入‘一只戴安全帽的机械臂’,输出一张图”的简单映射。它背后是一整套跨…

📅 2026/10/8 0:44:09
MORE NEWS

更多资讯

📰

Midway Koa Web 框架演进全解析:从 CHANGELOG 到 @midwayjs/koa 源码实现

后端微服务云原生 【免费下载链接】midway 🍔 A Node.js Serverless Framework for front-end/full-stack developers. Build the application for next decade. Works on AWS, Alibaba Cloud, Tencent Cloud and traditional VM/Container. Super easy integrate w…

📰

TIL 实战:PostgreSQL TRUNCATE 清空表后如何让自增序列自动归零(RESTART IDENTITY)

文档教程知识库 【免费下载链接】til :memo: Today I Learned 项目地址: https://gitcode.com/gh_mirrors/ti/til 点击查看 免费下载 TRUNCATE 是 PostgreSQL 中清空整张表数据的高效手段,但很多开发者会发现:用 serial/bigserial 做主键的表…

📰

Calibre 格式转换实操指南:EPUB 转 MOBI 装进 Kindle

Calibre 格式转换实操指南:EPUB 转 MOBI 装进 Kindle 【免费下载链接】calibre The official source code repository for the calibre ebook manager 项目地址: https://gitcode.com/GitHub_Trending/ca/calibre Kindle 弹出「无法识别此文件」时&#xff0…

📰

MMagic 中的 Stable Diffusion 文生图与图像修复实战:配置解析、推理调用与 ToMe 加速指南

媒体生成计算机视觉深度学习人工智能大模型 【免费下载链接】mmagic OpenMMLab Multimodal Advanced, Generative, and Intelligent Creation Toolbox. Unlock the magic 🪄: Generative-AI (AIGC), easy-to-use APIs, awsome model zoo, diffusion models, for tex…

📰

掌握 systemd:从入门到生产级配置

文章目录1. systemd 的诞生背景systemd 为什么出现?2. systemd 的核心组件核心组件列表3. systemd Unit 类型4. systemd Service Type 对比5. systemd timer vs crontab(全面对比)5.1 为什么 timer 更现代?5.2 timer 例子6. syste…

📰

Hyperf devtool 开发者工具指南:gen 代码生成器与 vendor:publish 配置发布实战

后端Web框架微服务RPC框架异步编程 【免费下载链接】hyperf 🚀 A coroutine framework that focuses on hyperspeed and flexibility. Building microservice or middleware with ease. 项目地址: https://gitcode.com/hyperf/hyperf 点击查看 免费下载 …

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬