douyin README

The project's README from github.com/zyronon/douyin. As one markdown file: README.md.

Douyin-Vue

English | Spanish | German | French | 简体中文 | 日本語

License Featured|HelloGitHub

Douyin | Trendshift

douyin-vue 是一个模仿 抖音|TikTok 的移动端短视频项目。Vue 在移动端的"最佳实践",媲美原生 App 丝滑流畅的使用体验。使用了最新的 Vue 技术栈,基于 Vue3、Vite5 、Pinia实现。数据保存在项目本地,通过 axios-mock-adapter 库拦截Api 并返回本地json数据,模拟真实后端请求

在线访问

Github Pages: https://dy.typewords.cc/

链接

【模仿抖音系列】一:200行代码实现类似Swiper.js的轮播组件
【模仿抖音系列】二:实现抖音 “视频无限滑动“效果
【模仿抖音系列】三:Vue 路由使用介绍以及添加转场动画
【模仿抖音系列】四:Vue 有条件路由缓存,就像传统新闻网站一样
【模仿抖音系列】五:Github Actions 部署 Pages、同步到 Gitee、翻译 README 、 打包 docker 镜像
【模仿抖音系列】六:使用rem、动态vh自适应移动端

运行

注意:本项目仅适用于学习和研究,不得用于商业使用

快速部署至 Vercel

Deploy with Vercel

部署到 Docker

# pull Docker image
docker pull ghcr.io/zyronon/douyin-vue:latest

# start container, nginx reverse proxy custom port, for example: docker run -d -p 80:80 ghcr.io/zyronon/douyin-vue:latest
docker run -d -p 80:80 ghcr.io/zyronon/douyin-vue:latest

本地开发

注意:必须 git 命令 clone 下来才能运行,下载 zip 包是无法运行的。如果 clone 速度太慢,推荐使用 gitee 地址

git clone https://gitee.com/zyronon/douyin.git (中国使用)
          https://github.com/zyronon/douyin.git 
cd douyin
npm install
npm run dev

打开浏览器并访问: http://127.0.0.1:3000

注意:需要将浏览器切至手机模式,先按 F12 调出控制台,再按 Ctrl+Shift+M 才能正常预览

数据来源

视频来源于以下抖音网红

图片来自于小红书公开笔记

以上内容均是互联网公开信息

功能与建议

目前项目处于开发初期,新功能正在持续添加中,如果你对软件有任何功能与建议,欢迎在 Issues 中提出 如果你也喜欢本软件的设计思想,欢迎提交 PR,非常感谢你对我们的支持!

联系我

您可以联系我的邮箱 [email protected]

分享我其他开源项目:

**Typing Word ** - 可在网页上使用的背单词软件~
**Web Scripts ** - 一些好用的油猴脚本~

许可协议

GPL

douyin (zyronon/douyin)

Searching Database…

11.5K ·GitHub
这是什么?这是一个基于 Vue3 + Pinia 的抖音(TikTok)仿制版,旨在展示在移动端使用 Vue 的最佳实践,实现类似原生应用般流畅的短视频信息流。
这是一个真正连接抖音服务器的应用,还是只是一个前端演示?这只是一个纯前端演示:所有数据都保存在本地的 JSON 文件中,并通过 axios-mock-adapter 拦截 API 请求,模拟真实后端的响应。
我该如何在本地运行它?使用 git 克隆仓库(不要下载 zip 压缩包),然后运行 Vite 开发服务器;你也可以将其部署到 Vercel,或通过自带的 Docker 镜像进行构建和运行。
我需要抖音的 API 密钥或任何后端凭证吗?不需要——项目并未真正接入抖音 API;所有视频和用户数据都预先写入本地 JSON 模拟数据中,并通过 axios-mock-adapter 提供。
在浏览器中预览时有什么需要注意的地方吗?你必须将浏览器切换到移动设备模式(按 F12,然后按 Ctrl+Shift+M)才能正确查看,因为它是按纯移动端布局构建的;此外,本项目明确仅用于学习和研究,不可用于商业用途。
它只能在移动设备上使用吗?它可以在任何浏览器中运行,但采用的是移动端网页布局,因此你可以在真实手机上查看,也可以在电脑上开启移动端模拟后查看。
与普通网页视频列表相比,这个滚动信息流为什么会如此流畅?项目从零实现了无限纵向滑动的视频信息流,以及一个类似 Swiper 的自定义轮播组件,并专门针对移动端触摸性能进行了优化,而不是使用现成的大型库。
它是否像原生应用一样有页面切换动画?有的,项目添加了路由切换动画和条件性路由缓存,使页面之间的跳转更接近应用体验,这与传统新闻网站缓存列表页的做法类似。
是否有公开的文章介绍它是如何构建的?作者发布了配套的系列博客,内容涵盖轮播组件、无限滚动、路由切换、路由缓存、使用 rem/vh 实现的移动端响应式尺寸适配,以及 CI/CD 部署流程。
它是如何部署并保持更新的?GitHub Actions 工作流会在代码变更时自动部署到 GitHub Pages、同步到 Gitee Pages、翻译 README,并构建 Docker 镜像。
Creator
zyronon
Size
615.4 MB
Stars
11.5K
Age
8y
Commits · 90 Days