https://github.com/jhnns/spa-vs-universal
Real-world example implementation of a blog using a SPA and a universal architecture. Demonstrates server-side rendering combined with code-splitting.
https://github.com/jhnns/spa-vs-universal
Last synced: 3 months ago
JSON representation
Real-world example implementation of a blog using a SPA and a universal architecture. Demonstrates server-side rendering combined with code-splitting.
- Host: GitHub
- URL: https://github.com/jhnns/spa-vs-universal
- Owner: jhnns
- Created: 2017-10-11T19:35:48.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2018-03-06T11:14:09.000Z (over 7 years ago)
- Last Synced: 2025-03-18T21:54:23.650Z (3 months ago)
- Language: JavaScript
- Homepage:
- Size: 2.78 MB
- Stars: 31
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Evaluation
## Platform recommendations
The setup has been verified to run correctly with:
- macOS Sierra 10.12.6
- Node.js v8.1.3
- NPM v5.0.3
- Chrome Browser 60.0.3112.90**Please note: Only NPM 5 will install the exact same dependencies as specified in the `package-lock.json`. Older NPM versions might install different versions than the verified test setup.**
## SPA implementation
### Installation
1. Inside the `spa` folder, execute `npm install` to install all dependencies
2. Run `npm start`
3. Open [http://localhost:3000](http://localhost:3000)
4. Use "jhnns" and "password" as login credentials## Universal implementation
### Installation
1. Inside the `universal` folder, execute `npm install` to install all dependencies
2. Run `npm start`
3. Open [http://localhost:3000](http://localhost:3000)
4. Use "jhnns" and "password" as login credentials### Note on folder structure
- `app` contains all the code that is going to be processed by the bundler.
- `app/client` represents the client app entry.
- `app/server` represents the server app entry.
- `app/components` contains components, views and states. They have been coalesced by features. The folder name "components" refers here to its original meaning "self-contained part of a larger entity".
- `app/routes` contains route handlers.
- `server` is the server entry.
- `server/api` roughly equals the server data layer.