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
Что это такое?Клон Douyin (TikTok) на Vue3 + Pinia, созданный для демонстрации лучших практик использования Vue на мобильных устройствах с плавной лентой коротких видео, как в нативном приложении.
Это настоящее приложение, которое обращается к серверам Douyin, или просто демо фронтенда?Это чисто фронтенд-демо: все данные хранятся локально в JSON, а axios-mock-adapter перехватывает запросы к API и имитирует ответ настоящего бэкенда.
Как запустить это локально?Клонируйте репозиторий с помощью git (не ZIP-архив), затем запустите сервер разработки Vite; также его можно развернуть на Vercel или собрать и запустить через прилагаемый Docker-образ.
Нужен ли мне ключ API Douyin или какие-либо учётные данные бэкенда?Нет — реальной интеграции с API Douyin нет; все данные о видео и пользователях заранее подготовлены в локальных 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