This is a full-stack application, but only the source for the frontend is found here. It uses Angular2 for the front-end (user interface), and Firebase for the backend (data storage and authentication).
Interview Wizard is under development by Van Boughner, and is mainly intended to be useful for storing interview questions, and for demonstrating an ability to create single page applications.
Running instance of this application can be found at http://interview-wizard.com
Some of this project is boiler-plate, provided initially by the Angular2 CLI. Files that were added and modified are: README.md, src/index.html, and everything under src/app.
Hierarchy of user interface components (add '.component.ts' to the names below, to find these files):
-
under 'app': header, signin, signup, questions, footer
-
under 'questions': question-start, question-area, question-edit, question-list, question-item
Routing is handled in app.routing and questions/questions.routes
Signup, sign in, and route protection are handled in auth/auth.service, Firebase is used to store authentication information.
Data model is managed by questions/question.service and cloud storage is handled by data/storage.service (also using Firebase for the backend).
Not implemented yet: app/src/answer-area/answer-area.component, and it will contain code for displaying the answers to questions, separately from the questions themselves.
------ boilerplate follows....
This project was generated with angular-cli version 1.0.0-beta.15.
Run ng serve
for a dev server. Navigate to http://localhost:4200/
. The app will automatically reload if you change any of the source files.
Run ng generate component component-name
to generate a new component. You can also use ng generate directive/pipe/service/class
.
Run ng build
to build the project. The build artifacts will be stored in the dist/
directory. Use the -prod
flag for a production build.
Run ng test
to execute the unit tests via Karma.
Run ng e2e
to execute the end-to-end tests via Protractor.
Before running the tests make sure you are serving the app via ng serve
.
Run ng github-pages:deploy
to deploy to Github Pages.
To get more help on the angular-cli
use ng --help
or go check out the Angular-CLI README.