Skip to content

milansar/rwa-trivia

This branch is 6 commits ahead of, 1 commit behind anihalaney/rwa-trivia:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ac9dc2d · Oct 8, 2020
May 7, 2020
Oct 8, 2020
Oct 8, 2020
Jun 16, 2020
Sep 14, 2018
Aug 14, 2020
Jun 22, 2020
Oct 8, 2020
May 10, 2019
Oct 8, 2020
Sep 11, 2018
Jun 12, 2017
Jan 15, 2017
Aug 30, 2019
May 11, 2020
May 14, 2019
Aug 14, 2020
Jul 15, 2019
May 16, 2019
Jun 17, 2020
Sep 10, 2019
Sep 11, 2019
Aug 13, 2019
Aug 5, 2019
May 10, 2019
Sep 27, 2019
Apr 1, 2020
Sep 12, 2019
Apr 3, 2019
May 28, 2020
Jun 19, 2020
Jul 8, 2019
Mar 26, 2020
Sep 4, 2018
Sep 10, 2020
Mar 26, 2020
Jan 7, 2020
Jun 19, 2019
Jan 31, 2020
Dec 19, 2019
Aug 2, 2019
Aug 2, 2019
Jun 17, 2020
Oct 8, 2020
Sep 21, 2018
Jun 22, 2020
Aug 26, 2019

Repository files navigation

rwa-trivia app

See it in action:

This is part of building a new app for my series - Real World Angular @ https://blog.realworldfullstack.io/

Part 0: From zero to cli-ng

Part 1: Not another todo list app

Part 2: It's a Material world

Part 3: Form Formation

Part 4: State of my SPA

Part 5: Light my fire

Part 6: 3Rs ... Rules, Roles & Routes

Part 6.1: Upgrading to 4.0.0-rc.2

Part 7: Split my lazy loaded code

Part 8: Just Ahead of In Time

Part 9: Unit Testing

Part 9.1: More Unit Testing

Part 9.2: Even More Unit Tests

Part 10: Angular 4 upgrade

Part 11: Gameplay with Angular

Part 12: Cloud Functions for Firebase

Part 13: Elasticsearch on Google Cloud with Firebase functions

Part 14: Faceted search with Elasticsearch and Angular Material data-table

Part 15: Incorporate Material UI design into the app

Part 16: Migrating from Firebase to Firestore

Part 17: Bulk upload and User profile settings using firebase cloud storage

Part 18: Revisiting ngrx - Splitting store into feature modules, using action classes, selectors & router-store

Part 19: Ready Player Two - Two player game play, computing stats, dashboard and other features

Part 20: Angular, ngrx & cli version 6 - Upgrading Angular, cli, ngrx, material & RxJS to version 6

Part 21: Service Workers (Progressive Web App) with Angular

Part 22: Angular Testing with Protractor, Jasmine and Jest

Part 23: Server side rendering with Angular universal

Part 24: Angular workspace

Part 25-a: NativeScript, Angular and Firebase

Quick Installation Instructions

  • Install cli globally (version should match the one in package.json)

npm install -g @angular/[email protected]

  • Install npm packages

npm install

  • Setup your firebase instance @ https://firebase.google.com/

  • Setup providers in Firebase Authentication

  • Use the firebase configuration information and plug it in src/environment.ts

  • Import src/db.json to your firebase database instance to get the initial set of test data

  • Run the application using ng serve

ng serve

  • Add yourself as a user using the application. Ensure you are added as a user in Authentication tab of firebase console.

  • Add your user id as an admin in the firebase database (admins need to be added manually) -

Set: users/<user id>/roles/admin: true

  • Use firebase-rules.json file to setup the firebase rules for your database

  • Serve the application again. Ensure you have admin privileges

ng serve

Deploy to Firebase Server

  • Install firebase tools globally

npm install -g firebase-tools

  • Authenticate with your firebase credentials

firebase login

  • Setup firebase hosting configuration for the application, using "dist" instead of public as the public folder name

firebase init

  • Create a build

ng build

  • Serve up the app using firebase server locally

firebase serve

  • Deploy Site to firebase

firebase deploy --only hosting

  • Setup firebase functions - creates functions folder and installs dependencies

firebase init

  • Deploy functions to firebase

npm run deploy-functions

Testing

  • Test the application using

ng test

About

Trivia App - Real World Angular series

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 51.5%
  • HTML 26.3%
  • CSS 17.2%
  • JavaScript 5.0%