https://restaurantfinder.newtonjoshua.com/
- As a tourist I want to know which restaurants are currently near me, so I can decide where I might want to eat.
- As a tourist I want to be informed how other people experienced a restaurant, so I can make a better judgement of the place where I want to eat.
- As a tourist I want to express how I experienced a restaurant after I visited it, so I help other tourists to make a better decision in the future.
- Neat implementation of the user interface
- Linting for both business logic and CSS
- Clear way on how to integrate the CI approach
- Documentation – TSDocs and readme.md file
- Description on how this application can be deployed – FireBase
Refer Google Maps Documentation.
Refer FireBase Setup Documentation.
This project was generated with Angular CLI version 1.0.0-rc.2.
To get more help on the Angular CLI use ng help
or go check out the Angular CLI README.
This Web app as a Progressive Web Apps (PWA) is reliable, fast, and engaging. Visit https://restaurantfinder.newtonjoshua.com/ in any android phones. It'll prompt you to add this web app to your homescreen, making it easy to launch and return to this app. Thanks to Web app install banners.
Lighthouse, an open-source automated tool, is used for improving the quality of this web pages.
npm install -g lighthouse
lighthouse https://restaurantfinder.newtonjoshua.com/ --view --output-path=./src/docs/lighthouse-results.html
Take a look at the latest Quality Report below
https://restaurantfinder.newtonjoshua.com/docs/lighthouse-results.html
Refer LightHouse Documentation.
For TypeScript Linting - ng lint
For CSS Linting - csslint src
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.
The continuos integeration service, Travis CI, is used for automatically build and deploy this code as you push it to GitHub.
continuous integration : angular cli + firebase + travis ci
The angular cli is used to build the project and firebase is used to host the web app.
Take a look at the Travis CI Dashboard here https://travis-ci.org/NewtonJoshua/RestaurantFinder
TypeDoc, a documentation generator is used to generate the documentation for this TypeScript project/
npm install -g typedoc
typedoc --module commonjs --includes src/app --out src/docs
Take a look at the latest documentation generated as a step in the continuous integeration is given below,
https://restaurantfinder.newtonjoshua.com/docs/globals.html
Refer TypeDoc Documentation.
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.
FireBase is used to easily deploy and host this app's static assets (HTML, CSS, JavaScript, etc)
firebase deploy
Refer FireBase Hosting Documentation.
To test the functionality of the web app you can manipulate the current geolocation in the chrome browser and search for restaurants.
Refer Emulating Geolocation.
The time taken to develop, test, deploy, document this web app is apprx. 16 hrs, equivalent to 2 working days.
The AITAM products are developed by Newton Joshua
Know more @ NewtonJoshua.com.
Socialize @ FaceBook.