假期闲来无事,打算分享下自己24年完成的毕业设计,使用kotlin(Ktor,Compose)全栈开发的一个ASMR软件。客户端是改造原先一个在线项目,所以会存在两个客户端项目,跨平台部分是新建的项目
技术介绍:
Ktor
Ktor 是一个用于创建异步服务器和客户端应用程序的框架,它完全用 Kotlin 编写
官方链接:Welcome | Ktor Documentation
Compose Multiplatform
Compose Multiplatform 是 Jetpack Compose 的扩展,它允许开发者使用 Kotlin 语言和声
明式 UI 范式创建跨平台的 UI
官方链接:Compose Multiplatform UI Framework | JetBrains
可以学到什么
这个项目可以学到Compose
客户端
使用的Compose版本为1.6.0
- 使用coil来展示图片,ktor来实现网络请求
- Compose的使用
- 不同平台怎么区分并各自去实现功能,如音频播放
- 数据的缓存
后台
使用的ktor版本为2.3.9,目前最新已经是3开头了,想学习的话建议直接升级最新的版本学习
- ktor连接数据库
- ktor中swagger的使用
- ktor中使用jwt身份验证
- ktor中如何上传文件到服务器
功能介绍
客户端
1.首页展示:通过网络请求分页向后端获取 ASMR 数据。
2.音频推荐:根据用户的历史喜好和行为习惯推荐音频。
3.音频搜索:可以根据音频名称进行模糊搜索。
4.ASMR 分类:ASMR 会进行分类,用户可以选择的分类获取 ASMR。
5.音频播放:可以播放想要播放的音频和控制播放状态。
6.ASMR 收藏:用户可以收藏自己感兴趣的 ASMR,可以通过收藏列表找到该 ASMR。
7.ASMR 历史:用户播放过的音频会被记录到历史,用户可以访问历史记录和删除历史记
录。
8.数据同步:用户在不同设备的数据会进行同步。
9.登录与注册:允许用户注册并登录。
后端
1.ASMR 管理:管理员可以对 ASMR 进行增删改查。
2.音频管理:管理员可以对音频进行增删改查。
3.ASMR 分类管理:管理员可以对分类进行增删改查。
4.用户管理:管理员对用户进行增删改查。
5.登录:允许管理员登录后台页面。
界面展示
客户端