├── .babelrc ├── .dockerignore ├── .editorconfig ├── .env.example ├── .eslintrc.js ├── .gitignore ├── .prettierrc ├── .vscode ├── launch.json └── settings.json ├── README.md ├── assets ├── README.md └── css │ ├── main.scss │ └── tailwind.css ├── components ├── CommentItem.vue ├── CommentsManager.vue ├── MediaPlayer.vue ├── Pagination.vue ├── README.md ├── SidebarRight.vue ├── box │ ├── ArticleGirdBox.vue │ ├── ArticleListBox.vue │ ├── CommentBox.vue │ └── NoDataBox.vue ├── loadings │ └── HomeLoading.vue ├── modules │ └── vue-aplayer │ │ ├── assets │ │ ├── loading.svg │ │ ├── lrc.svg │ │ ├── menu.svg │ │ ├── no-repeat.svg │ │ ├── pause.svg │ │ ├── play.svg │ │ ├── repeat-all-legacy.svg │ │ ├── repeat-all.svg │ │ ├── repeat-one-legacy.svg │ │ ├── repeat-one.svg │ │ ├── shuffle.svg │ │ ├── skip.svg │ │ ├── volume-down.svg │ │ ├── volume-off.svg │ │ ├── volume-up.svg │ │ ├── vue-aplayer-round.png │ │ └── vue-aplayer.png │ │ ├── components │ │ ├── aplayer-controller-progress.vue │ │ ├── aplayer-controller-volume.vue │ │ ├── aplayer-controller.vue │ │ ├── aplayer-icon.vue │ │ ├── aplayer-iconbutton.vue │ │ ├── aplayer-list.vue │ │ ├── aplayer-lrc.vue │ │ └── aplayer-thumbnail.vue │ │ ├── default.jpg │ │ ├── scss │ │ └── variables.scss │ │ ├── types.ts │ │ ├── utils.ts │ │ └── vueAplayer.vue ├── pages │ ├── 404.vue │ ├── 422.vue │ ├── 500.vue │ ├── ArticleDetailPage.vue │ ├── ArticleHistoryPage.vue │ ├── BlogPage.vue │ ├── CategoryDetailPage.vue │ ├── HomePage.vue │ ├── README.md │ ├── TrendingPage.vue │ └── test.vue ├── player │ ├── AudioPlayer.vue │ ├── VideoPlayer.vue │ └── YtbPlayer.vue ├── sessions │ ├── ArticleSession.vue │ ├── CommentSession.vue │ ├── HashtagSession.vue │ └── TrendingSession.vue ├── shared │ ├── Header.vue │ ├── ListArticlePageLayout.vue │ ├── Logo.vue │ ├── NavBar.vue │ ├── PaginationBar.vue │ └── SmallNavBar.vue ├── skeletons │ ├── ArticleSkeletonBox.vue │ ├── ArticleSkeletonFullBox.vue │ ├── ArticlesSkeletonSession.vue │ ├── HashtagSkeletonSession.vue │ └── TrendingSkeletonSession.vue └── tags │ └── SessionHeadTag.vue ├── compose └── Dockerfile.prod ├── content └── hello.md ├── docker-compose.yml ├── jest.config.js ├── layouts ├── README.md └── default.vue ├── middleware ├── README.md └── skelton.ts ├── mock └── seed.ts ├── nuxt.config.js ├── package.json ├── plugins ├── README.md ├── initialClient │ └── index.ts ├── localforage │ └── index.ts ├── mixins │ └── index.ts └── websocket-channel │ ├── event.ts │ ├── index.ts │ ├── reconnectingWebsocket.ts │ └── store.ts ├── routes └── index.ts ├── static ├── README.md ├── favicon.ico ├── icon.png ├── images │ └── default-image.png ├── logo.png └── sreenshot-demo.png ├── store ├── README.md ├── article.ts ├── blog.ts ├── category.ts ├── comment.ts ├── detail.ts ├── home.ts ├── index.ts ├── socket.ts └── ui.ts ├── tailwind.config.js ├── test └── Logo.spec.js ├── tsconfig.json ├── types ├── article.ts ├── audio.ts ├── blog.ts ├── category.ts ├── comment.ts ├── global.d.ts ├── meta.ts ├── result.ts ├── setting.ts ├── store.ts ├── tag.ts ├── user.ts ├── utils.ts ├── video.ts └── vue-shim.d.ts └── utils ├── authentication.ts ├── contants.ts ├── decorator.ts ├── index.ts ├── localStorage.ts ├── localStoreDB.ts ├── params.ts └── request.ts /.babelrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/.babelrc -------------------------------------------------------------------------------- /.dockerignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /package-lock.json 3 | /client/dist 4 | /yarn.lock -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/.editorconfig -------------------------------------------------------------------------------- /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/.env.example -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/.eslintrc.js -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/.gitignore -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/.prettierrc -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/.vscode/launch.json -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/README.md -------------------------------------------------------------------------------- /assets/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/assets/README.md -------------------------------------------------------------------------------- /assets/css/main.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/assets/css/main.scss -------------------------------------------------------------------------------- /assets/css/tailwind.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/assets/css/tailwind.css -------------------------------------------------------------------------------- /components/CommentItem.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/CommentItem.vue -------------------------------------------------------------------------------- /components/CommentsManager.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/CommentsManager.vue -------------------------------------------------------------------------------- /components/MediaPlayer.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/MediaPlayer.vue -------------------------------------------------------------------------------- /components/Pagination.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/Pagination.vue -------------------------------------------------------------------------------- /components/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/README.md -------------------------------------------------------------------------------- /components/SidebarRight.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/SidebarRight.vue -------------------------------------------------------------------------------- /components/box/ArticleGirdBox.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/box/ArticleGirdBox.vue -------------------------------------------------------------------------------- /components/box/ArticleListBox.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/box/ArticleListBox.vue -------------------------------------------------------------------------------- /components/box/CommentBox.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/box/CommentBox.vue -------------------------------------------------------------------------------- /components/box/NoDataBox.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/box/NoDataBox.vue -------------------------------------------------------------------------------- /components/loadings/HomeLoading.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/loadings/HomeLoading.vue -------------------------------------------------------------------------------- /components/modules/vue-aplayer/assets/loading.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/assets/loading.svg -------------------------------------------------------------------------------- /components/modules/vue-aplayer/assets/lrc.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/assets/lrc.svg -------------------------------------------------------------------------------- /components/modules/vue-aplayer/assets/menu.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/assets/menu.svg -------------------------------------------------------------------------------- /components/modules/vue-aplayer/assets/no-repeat.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/assets/no-repeat.svg -------------------------------------------------------------------------------- /components/modules/vue-aplayer/assets/pause.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/assets/pause.svg -------------------------------------------------------------------------------- /components/modules/vue-aplayer/assets/play.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/assets/play.svg -------------------------------------------------------------------------------- /components/modules/vue-aplayer/assets/repeat-all-legacy.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/assets/repeat-all-legacy.svg -------------------------------------------------------------------------------- /components/modules/vue-aplayer/assets/repeat-all.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/assets/repeat-all.svg -------------------------------------------------------------------------------- /components/modules/vue-aplayer/assets/repeat-one-legacy.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/assets/repeat-one-legacy.svg -------------------------------------------------------------------------------- /components/modules/vue-aplayer/assets/repeat-one.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/assets/repeat-one.svg -------------------------------------------------------------------------------- /components/modules/vue-aplayer/assets/shuffle.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/assets/shuffle.svg -------------------------------------------------------------------------------- /components/modules/vue-aplayer/assets/skip.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/assets/skip.svg -------------------------------------------------------------------------------- /components/modules/vue-aplayer/assets/volume-down.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/assets/volume-down.svg -------------------------------------------------------------------------------- /components/modules/vue-aplayer/assets/volume-off.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/assets/volume-off.svg -------------------------------------------------------------------------------- /components/modules/vue-aplayer/assets/volume-up.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/assets/volume-up.svg -------------------------------------------------------------------------------- /components/modules/vue-aplayer/assets/vue-aplayer-round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/assets/vue-aplayer-round.png -------------------------------------------------------------------------------- /components/modules/vue-aplayer/assets/vue-aplayer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/assets/vue-aplayer.png -------------------------------------------------------------------------------- /components/modules/vue-aplayer/components/aplayer-controller-progress.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/components/aplayer-controller-progress.vue -------------------------------------------------------------------------------- /components/modules/vue-aplayer/components/aplayer-controller-volume.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/components/aplayer-controller-volume.vue -------------------------------------------------------------------------------- /components/modules/vue-aplayer/components/aplayer-controller.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/components/aplayer-controller.vue -------------------------------------------------------------------------------- /components/modules/vue-aplayer/components/aplayer-icon.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/components/aplayer-icon.vue -------------------------------------------------------------------------------- /components/modules/vue-aplayer/components/aplayer-iconbutton.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/components/aplayer-iconbutton.vue -------------------------------------------------------------------------------- /components/modules/vue-aplayer/components/aplayer-list.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/components/aplayer-list.vue -------------------------------------------------------------------------------- /components/modules/vue-aplayer/components/aplayer-lrc.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/components/aplayer-lrc.vue -------------------------------------------------------------------------------- /components/modules/vue-aplayer/components/aplayer-thumbnail.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/components/aplayer-thumbnail.vue -------------------------------------------------------------------------------- /components/modules/vue-aplayer/default.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/default.jpg -------------------------------------------------------------------------------- /components/modules/vue-aplayer/scss/variables.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/scss/variables.scss -------------------------------------------------------------------------------- /components/modules/vue-aplayer/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/types.ts -------------------------------------------------------------------------------- /components/modules/vue-aplayer/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/utils.ts -------------------------------------------------------------------------------- /components/modules/vue-aplayer/vueAplayer.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/modules/vue-aplayer/vueAplayer.vue -------------------------------------------------------------------------------- /components/pages/404.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/pages/404.vue -------------------------------------------------------------------------------- /components/pages/422.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/pages/422.vue -------------------------------------------------------------------------------- /components/pages/500.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/pages/500.vue -------------------------------------------------------------------------------- /components/pages/ArticleDetailPage.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/pages/ArticleDetailPage.vue -------------------------------------------------------------------------------- /components/pages/ArticleHistoryPage.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/pages/ArticleHistoryPage.vue -------------------------------------------------------------------------------- /components/pages/BlogPage.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/pages/BlogPage.vue -------------------------------------------------------------------------------- /components/pages/CategoryDetailPage.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/pages/CategoryDetailPage.vue -------------------------------------------------------------------------------- /components/pages/HomePage.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/pages/HomePage.vue -------------------------------------------------------------------------------- /components/pages/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/pages/README.md -------------------------------------------------------------------------------- /components/pages/TrendingPage.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/pages/TrendingPage.vue -------------------------------------------------------------------------------- /components/pages/test.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/pages/test.vue -------------------------------------------------------------------------------- /components/player/AudioPlayer.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/player/AudioPlayer.vue -------------------------------------------------------------------------------- /components/player/VideoPlayer.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/player/VideoPlayer.vue -------------------------------------------------------------------------------- /components/player/YtbPlayer.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/player/YtbPlayer.vue -------------------------------------------------------------------------------- /components/sessions/ArticleSession.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/sessions/ArticleSession.vue -------------------------------------------------------------------------------- /components/sessions/CommentSession.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/sessions/CommentSession.vue -------------------------------------------------------------------------------- /components/sessions/HashtagSession.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/sessions/HashtagSession.vue -------------------------------------------------------------------------------- /components/sessions/TrendingSession.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/sessions/TrendingSession.vue -------------------------------------------------------------------------------- /components/shared/Header.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/shared/Header.vue -------------------------------------------------------------------------------- /components/shared/ListArticlePageLayout.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/shared/ListArticlePageLayout.vue -------------------------------------------------------------------------------- /components/shared/Logo.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/shared/Logo.vue -------------------------------------------------------------------------------- /components/shared/NavBar.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/shared/NavBar.vue -------------------------------------------------------------------------------- /components/shared/PaginationBar.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/shared/PaginationBar.vue -------------------------------------------------------------------------------- /components/shared/SmallNavBar.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/shared/SmallNavBar.vue -------------------------------------------------------------------------------- /components/skeletons/ArticleSkeletonBox.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/skeletons/ArticleSkeletonBox.vue -------------------------------------------------------------------------------- /components/skeletons/ArticleSkeletonFullBox.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/skeletons/ArticleSkeletonFullBox.vue -------------------------------------------------------------------------------- /components/skeletons/ArticlesSkeletonSession.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/skeletons/ArticlesSkeletonSession.vue -------------------------------------------------------------------------------- /components/skeletons/HashtagSkeletonSession.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/skeletons/HashtagSkeletonSession.vue -------------------------------------------------------------------------------- /components/skeletons/TrendingSkeletonSession.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/skeletons/TrendingSkeletonSession.vue -------------------------------------------------------------------------------- /components/tags/SessionHeadTag.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/components/tags/SessionHeadTag.vue -------------------------------------------------------------------------------- /compose/Dockerfile.prod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/compose/Dockerfile.prod -------------------------------------------------------------------------------- /content/hello.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/content/hello.md -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/jest.config.js -------------------------------------------------------------------------------- /layouts/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/layouts/README.md -------------------------------------------------------------------------------- /layouts/default.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/layouts/default.vue -------------------------------------------------------------------------------- /middleware/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/middleware/README.md -------------------------------------------------------------------------------- /middleware/skelton.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/middleware/skelton.ts -------------------------------------------------------------------------------- /mock/seed.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/mock/seed.ts -------------------------------------------------------------------------------- /nuxt.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/nuxt.config.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/package.json -------------------------------------------------------------------------------- /plugins/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/plugins/README.md -------------------------------------------------------------------------------- /plugins/initialClient/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/plugins/initialClient/index.ts -------------------------------------------------------------------------------- /plugins/localforage/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/plugins/localforage/index.ts -------------------------------------------------------------------------------- /plugins/mixins/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/plugins/mixins/index.ts -------------------------------------------------------------------------------- /plugins/websocket-channel/event.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/plugins/websocket-channel/event.ts -------------------------------------------------------------------------------- /plugins/websocket-channel/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/plugins/websocket-channel/index.ts -------------------------------------------------------------------------------- /plugins/websocket-channel/reconnectingWebsocket.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/plugins/websocket-channel/reconnectingWebsocket.ts -------------------------------------------------------------------------------- /plugins/websocket-channel/store.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/plugins/websocket-channel/store.ts -------------------------------------------------------------------------------- /routes/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/routes/index.ts -------------------------------------------------------------------------------- /static/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/static/README.md -------------------------------------------------------------------------------- /static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/static/favicon.ico -------------------------------------------------------------------------------- /static/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/static/icon.png -------------------------------------------------------------------------------- /static/images/default-image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/static/images/default-image.png -------------------------------------------------------------------------------- /static/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/static/logo.png -------------------------------------------------------------------------------- /static/sreenshot-demo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/static/sreenshot-demo.png -------------------------------------------------------------------------------- /store/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/store/README.md -------------------------------------------------------------------------------- /store/article.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/store/article.ts -------------------------------------------------------------------------------- /store/blog.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/store/blog.ts -------------------------------------------------------------------------------- /store/category.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/store/category.ts -------------------------------------------------------------------------------- /store/comment.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/store/comment.ts -------------------------------------------------------------------------------- /store/detail.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/store/detail.ts -------------------------------------------------------------------------------- /store/home.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/store/home.ts -------------------------------------------------------------------------------- /store/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/store/index.ts -------------------------------------------------------------------------------- /store/socket.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/store/socket.ts -------------------------------------------------------------------------------- /store/ui.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/store/ui.ts -------------------------------------------------------------------------------- /tailwind.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/tailwind.config.js -------------------------------------------------------------------------------- /test/Logo.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/test/Logo.spec.js -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/tsconfig.json -------------------------------------------------------------------------------- /types/article.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/types/article.ts -------------------------------------------------------------------------------- /types/audio.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/types/audio.ts -------------------------------------------------------------------------------- /types/blog.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/types/blog.ts -------------------------------------------------------------------------------- /types/category.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/types/category.ts -------------------------------------------------------------------------------- /types/comment.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/types/comment.ts -------------------------------------------------------------------------------- /types/global.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/types/global.d.ts -------------------------------------------------------------------------------- /types/meta.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/types/meta.ts -------------------------------------------------------------------------------- /types/result.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/types/result.ts -------------------------------------------------------------------------------- /types/setting.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/types/setting.ts -------------------------------------------------------------------------------- /types/store.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/types/store.ts -------------------------------------------------------------------------------- /types/tag.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/types/tag.ts -------------------------------------------------------------------------------- /types/user.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/types/user.ts -------------------------------------------------------------------------------- /types/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/types/utils.ts -------------------------------------------------------------------------------- /types/video.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/types/video.ts -------------------------------------------------------------------------------- /types/vue-shim.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/types/vue-shim.d.ts -------------------------------------------------------------------------------- /utils/authentication.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/utils/authentication.ts -------------------------------------------------------------------------------- /utils/contants.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/utils/contants.ts -------------------------------------------------------------------------------- /utils/decorator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/utils/decorator.ts -------------------------------------------------------------------------------- /utils/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/utils/index.ts -------------------------------------------------------------------------------- /utils/localStorage.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/utils/localStorage.ts -------------------------------------------------------------------------------- /utils/localStoreDB.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/utils/localStoreDB.ts -------------------------------------------------------------------------------- /utils/params.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/utils/params.ts -------------------------------------------------------------------------------- /utils/request.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dongnguyenvie/blog_audio_ssr_nuxtjs/HEAD/utils/request.ts --------------------------------------------------------------------------------