STDF - 基于 Svelte 和 Tailwind CSS 打造的移动 web UI 组件库,Svelte 生态里不可多得的优秀项目

STDF - 基于 Svelte 和 Tailwind CSS 打造的移动 web  UI 组件库,Svelte 生态里不可多得的优秀项目

Svelte 是一个新兴的前端框架,组件库不多,今天介绍一款 Svelte 移动端的组件库。

关于 STDF

STDF 是一个移动端的 UI 组件库,主要用来开发移动端 web 应用。和我之前介绍的很多 Vue 组件库不一样,STDF 是基于近来新晋 js 框架 Svelte 开发的,Svelte 是一个和 Vue / React 类似的 JavaScript 框架,也就是说,这套组件库是专为 Svelte 打造的。

Svelte 简洁语法,主要是让原生 JS 代码有了响应式的能力,而且打包后的 web 应用很小,特别适合开发移动应用,而 Tailwind 又是一个优雅的 CSS 框架,有兴趣的小伙伴可以前去了解学习。STDF 组件库基于 Svelte 和 Tailwind 打造,取其优点,质量很高,本文会向大家介绍它。

为什么叫 STDF

STDF 作为国人开发的组件库,名字虽然简单,但作者也赋予了一些有意思的寓意:

常规解释:S 代表 Simple(简单),T 代表 Thin(轻量),D 代表 Design(设计),F 代表 Fast(快速),STDF 代表一个使用简单、体积轻量、设计友好、开发快速的组件库。

非常规解释:S 和 T 分别代表 Svelte 和 Tailwind,因为 STDF 是基于 Svelte 和 Tailwind 的。DF 可以看成诗人杜甫,不像李白那么浪漫飘逸,他注重的是实用性与易用性,这也是 STDF 的设计理念。希望每一位使用 STDF 的开发者都能写出诗一般的代码。
— 作者关于 STDF 名称的阐述

技术特性

  • 简单:使用 Svelte 语法编码简洁迅速。组件源码逻辑清晰、简单易懂、中英注释详细,查看源码、修改逻辑也可以得心应手
  • 轻量:源码体积小巧,无三方依赖。基于 Svelte 与 Tailwind 编译产出的代码在体积上也优势明显,这在移动端显得尤为重要
  • 设计优雅:针对移动设备优化设计与交互,使用友好、高效、灵活。支持通过简单配置定制颜色系统、圆角风格、亮暗模式等
  • 快速:无运行时,无虚拟 DOM,无烦杂的 CSS 代码,状态管理简单轻快。编码过程、编译处理、线上运行都快了起来

组件列表

  • 按钮 Button

  • 底部浮窗 BottomSheet

  • 图标 Icon

  • 遮罩 Mask

  • 弹出层 Popup

  • 分割线 Divider

  • 网格 Grids

  • 占位符 Placeholder

  • 骨架屏 Skeleton

  • 索引栏 IndexBar

  • 导航栏 NavBar

  • 分页 Pagination

  • 步骤条 Steps

  • 标签栏 TabBar

  • 标签页 Tabs

  • 动作面板 ActionSheet

  • 异步选择器 AsyncPicker

  • 日历 Calendar

  • 复选框 Checkbox

  • 输入框 Input

  • 选择器 Picker

  • 单选框 Radio

  • 评分 Rate

  • 滑块 Slider

  • 开关 Switch

  • 时间选择器 TimePicker

  • 头像 Avatar

  • 徽标 Badge

  • 单元格 Cell

  • 通告栏 NoticeBar

  • 进度条 Progress

  • 进度环 ProgressLoop

  • 轮播 Swiper

  • 对话框 Dialog

  • 加载 Loading

  • 弹框 Modal

  • 轻提示 Toast

开发上手体验和建议

Svelte 是近年来新兴的一款前端框架,不过目前生态还不是特别丰富,STDF 是其中的一款质量非常高的 UI 组件库,无论是组件颜值、代码和用法都非常优雅。

我之前也推荐过很多 PC 端的 Vue 组件库,移动端相对较少,STDF 的作者也道出了原因,这是因为移动端一般面向 C 端用户,对产品的性能、易用性和可用性要求很高。所以做好移动端的产品,需要花费大量精力。

综合来说,如果追求极致的性能表现,就可以选择 Svelte。如果需要生态完整、主流框架,Vue 仍是一个不错的选择。

STDF 这套组件库就凝聚了作者的很多经验,让我们开箱就可以直接使用,节省了大量的开发时间,让我们把精力放在业务上。更小更快的特点,让 STDF 这套组件库特别适合用来开发一些移动端相对简单的业务场景,特别是如果你觉得使用 Vue 或者 React 既麻烦打包又大,写原生 JS 又费时间的话,真的可以考虑用这套 Svelte 的组件库。

在已有配置好 Svelte 与 Tailwind 的工程的情况下,我们可以直接安装:

然后在 Svelet 中使用:

更详细的使用方法,可以查看 STDF 官网的文档,文档和代码例子写得很详细易懂。

免费开源说明

STDF 是一款基于 Svelte 和 Tailwind CSS 开发的移动端 web UI 组件库,源码基于 MIT 开源协议托管在 Github 上,而 Svelte 和 Tailwind CSS 同样是 MIT 开源项目,所以我们可以免费用于商业项目,也可以二次开发。

最后强调一下,之前我分享了很多 Vue 的组件库,但这是一个 Svelte 的组件库,不能在 Vue.js 上使用。

原文链接:https://www.thosefree.com/svelte-stdf

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/57078.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

echarts绘制甘特图

说在前面 项目上有需求,需要在大屏上展示进度甘特图,调研了DHTMLX和普加甘特图,效果都不是特别符合需求现状,查询了一些博客,决定使用echarts来绘制甘特图。 实现效果展示 实现思路分析 1、应该采用柱状图&#xff…

关于Java的IO流开发

IO概述 回想之前写过的程序,数据都是在内存中,一旦程序运行结束,这些数据都没有了,等下次再想使用这些数据,可是已经没有了。那怎么办呢?能不能把运算完的数据都保存下来,下次程序启动的时候&a…

[自动化测试] 读取CSV 文件

CSV文件可以用来存储固定字段数据,可以通过excel 表格另存为csv文件,不要直接改文件名称创建,不是真正的csv文件 import csv import codecs from itertools import islice #读取本地csv文件 datacsv.reader(codecs.open(filename./data/us…

探讨|使用或不使用机器学习

动动发财的小手,点个赞吧! 机器学习擅长解决某些复杂问题,通常涉及特征和结果之间的困难关系,这些关系不能轻易地硬编码为启发式或 if-else 语句。然而,在决定 ML 是否是当前给定问题的良好解决方案时,有一…

MySQL—— 基础语法大全

MySQL—— 基础 一、MySQL概述1.1 、数据库相关概念1.2 、MySQL 客户端连接1.3 、数据模型 二、SQL2.1、SQL通用语法2.2、SQL分类2.3、DDL2.4、DML2.5、DQL2.6、DCL 三、函数四、约束五、多表查询六、事务 一、MySQL概述 1.1 、数据库相关概念 数据库、数据库管理系统、SQL&a…

Webots与MATLAB联合仿真环境配置

1. 版本 系统:Win10 matlab版本:2023a webots版本:R2020b 2.安装 MATLAB MinGW-w64 C/C Compiler 在使用matlab写控制器之前,需要给matlab安装 MATLAB MinGW-w64 C/C Compiler,因为需要matlab与c进行交互。 下载地址…

小程序的 weiui的使用以及引入

https://wechat-miniprogram.github.io/weui/docs/quickstart.html 网址 1.点进去,在app.json里面配置 在你需要的 页面的 json里面配置,按需引入 然后看文档,再在你的 wxml里面使用就好了

框框大学之——教育技术学

清一色劝退的教育技术学。。。。。。 https://www.kkdaxue.com/?current1&major%E6%95%99%E8%82%B2%E6%8A%80%E6%9C%AF%E5%AD%A6&pageSize10&sortFieldcreateTime&sortOrderdescend 总结: 1 杂而不经 2 摆烂劝退居多 3 适合躺平 4 考公不行 5 要多…

(7.28-8.3)【大数据新闻速递】《数字孪生工业软件白皮书》、《中国绿色算力发展研究报告》发布;华为ChatGPT要来了

【数字孪生工业软件白皮书(2023)】 近日,第七届数字孪生与智能制造服务学术会议成功举行,2023《数字孪生工业软件白皮书》在会上正式发布。《白皮书》在《Digital Twin》国际期刊专家顾问委员会指导下,由国家重点研发计…

Java技术整理(4)—— 多线程并发篇

1、Java 线程实现/创建方式 (1)继承Thread类 Thread类本质上是实现了Runnable接口的实例,代表一个线程的实例,通过start()启动,自动执行run()方法。 (2)实现Runnable接口 Runnable是一个没有…

人类与机器的分类不同

分类能力也是智能的重要标识之一。通过分类,我们可以将事物或概念进行归类和组织,从而更好地理解和处理信息。分类在人类认知和智能发展中起到了重要的作用,它有助于我们对世界进行认知、记忆、推理和决策。在机器智能领域,分类同…

NSS [MoeCTF 2022]baby_file

NSS [MoeCTF 2022]baby_file 题目源码直接给了 使用data伪协议发现被ban了。 那就换一种伪协议php://filter,猜测flag在同目录下flag.php中或根目录下/flag中 php://filter/readconvert.base64-encode/resourceflag.php读取文件源码(针对php文件需要ba…