๐Ÿ“ฆ phil294 / vue-hackernews-ssr-alternative-data-fetching

issue demo

โ˜… 0 stars โ‘‚ 0 forks ๐Ÿ‘ 0 watching โš–๏ธ MIT License
๐Ÿ“ฅ Clone https://github.com/phil294/vue-hackernews-ssr-alternative-data-fetching.git
HTTPS git clone https://github.com/phil294/vue-hackernews-ssr-alternative-data-fetching.git
SSH git clone git@github.com:phil294/vue-hackernews-ssr-alternative-data-fetching.git
CLI gh repo clone phil294/vue-hackernews-ssr-alternative-data-fetching
Philip Waritschlager Philip Waritschlager change aysnc fetching method bc6e119 7 years ago ๐Ÿ“ History
๐Ÿ“‚ master View all commits โ†’
๐Ÿ“ build
๐Ÿ“ public
๐Ÿ“ src
๐Ÿ“„ .babelrc
๐Ÿ“„ .gitignore
๐Ÿ“„ LICENSE
๐Ÿ“„ manifest.json
๐Ÿ“„ package.json
๐Ÿ“„ README.md
๐Ÿ“„ server.js
๐Ÿ“„ yarn.lock
๐Ÿ“„ README.md

vue-hackernews-2.0

HackerNews clone built with Vue 2.0 + vue-router + vuex, with server-side rendering.


Live Demo

Features

Note: in practice, it is unnecessary to code-split for an app of this size (where each async chunk is only a few kilobytes), nor is it optimal to extract an extra CSS file (which is only 1kb) -- they are used simply because this is a demo app showcasing all the supported features. In real apps, you should always measure and optimize based on your actual app constraints.
  • Server Side Rendering
  • Vue + vue-router + vuex working together
  • Server-side data pre-fetching
  • Client-side state & DOM hydration
  • Automatically inlines CSS used by rendered components only
  • Preload / prefetch resource hints
  • Route-level code splitting
  • Progressive Web App
  • App manifest
  • Service worker
  • 100/100 Lighthouse score
  • Single-file Vue Components
  • Hot-reload in development
  • CSS extraction for production
  • Animation
  • Effects when switching route views
  • Real-time list updates with FLIP Animation

Architecture Overview

screen shot 2016-08-11 at 6 06 57 pm

A detailed Vue SSR guide can be found here.

Build Setup

Requires Node.js 7+

`` bash # install dependencies npm install # or yarn # serve in dev mode, with hot reload at localhost:8080 npm run dev # build for production npm run build # serve in production mode npm start ``

License

MIT