Skip to content

Commit d8eeb70

Browse files
committed
correct spelling
1 parent 9222910 commit d8eeb70

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

public/REAME.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# Core Logic
22

3-
In order to obtain the pin point weather data, earth location is a required parameter. For this, the longitude and latitude would surfice programmatically. For the interactive option, a physical postal address (partial address of City, State, Country) is needed. Optionally, you could also register with google map service (*additional charge will incur*). Then, integrate google-map API where the user can point to location on the map to trigger locolized weather report.
3+
To obtain the pinpoint weather data, earth location is a required parameter. For this, the longitude and latitude would suffice programmatically. For the interactive option, a physical postal address (partial address of City, State, or Country) is required. Optionally, you could also register with the google map service (*additional charge will incur*). Then, integrate google-map API where the user can point to a location on the map to trigger a localized weather report.
44

5-
* The geolocation of a known address can be obtained by using the client-side javascript [Windows Navigator](https://www.w3schools.com/jsref/obj_navigator.asp). Your browser uses different types and sources of information to identify your location. These include your IP address, geolocation via HTML5 in your browser, and your PC's language and time settings. For more detail how Navigator.geolocation is determined, [read more here](https://developer.mozilla.org/en-US/docs/Web/API/Geolocation/getCurrentPosition).
5+
* The geolocation of a known address can be obtained by using the client-side javascript [Windows Navigator](https://www.w3schools.com/jsref/obj_navigator.asp). Your browser uses different types and sources of information to identify your location. These include your IP address, geolocation via HTML5 in your browser, and your PC's language and time settings. For more detail on how Navigator.geolocation is determined, [read more here](https://developer.mozilla.org/en-US/docs/Web/API/Geolocation/getCurrentPosition).
66

77
Sample code for client-side geolocation:
88

@@ -31,7 +31,7 @@ Sample code for client-side geolocation:
3131
3232
and **API_ACCESS_KEY** can be obtained from registering with an API provider.
3333
34-
* With the return JSON object representing the weather data, you wrap the individual data objects in grid to make it user friendly.
34+
* With the return JSON object representing the weather data, you wrap the individual data objects in a grid to make it user-friendly.
3535
3636
<br />
3737
@@ -59,7 +59,7 @@ Replace freecodecamp proxy URI (file: public/scripts.js) for weather data provid
5959
6060
**Decision:**
6161
62-
You would want to live free and die harder, let's make the client calls the server whose in turn requests weather data and sends responses back. The client then can parse the response into a grid for display. This means, the server will need to provide GET requests!
62+
You would want to live free and die harder, let's make the client calls the server which in turn requests weather data and sends responses back. The client then can parse the response into a grid for display. This means the server will need to provide GET requests!
6363
6464
---
6565
@@ -84,19 +84,19 @@ e.g.
8484

8585
<strong><span style="color:gray; font-size:18px"> Staying within the Free Tier Limit</span> </strong>
8686

87-
A typical free daily allowance cycle consists of up to 1000 free API queries. In which case, the user has to wait until the begining of the next free tier cycle. To avoid being charged, this source code has a *a server-side accounting logic* to pause querying the weathercrossing API once its periodic allowance has been reached. Unpause is automatic once the clock rolls to the begin of a new daily free tier cycle.
87+
A typical free daily allowance cycle consists of up to 1000 free API queries. In this case, the user has to wait until the beginning of the next free tier cycle. To avoid being charged, this source code has a *a server-side accounting logic* to pause querying the weathercrossing API once its periodic allowance has been reached. Unpause is automatic once the clock rolls to the beginning of a new daily free tier cycle.
8888

8989
>*Potential development needed to notify the server admin if demands grew and if there are ways to monetize it.*
9090
9191
<strong><span style="color:gray; font-size:18px">Caching the Weather Data</span></strong>
9292

93-
Weather forecast data from `visualcrossing.com` typically contains infomation spanning 15 days, each day contains 24 hourly objects. Additional queries within the same period would usually resulted in the same data. We need to cache this information so not to incur needless and sometimes costly API calls.
93+
Weather forecast data from `visualcrossing.com` typically contains information spanning 15 days, each day contains 24 hourly objects. Additional queries within the same period would usually result in the same data. We need to cache this information so as not to incur needless and sometimes costly API calls.
9494

9595
We could elect to use the DOM Storage API, also called the [Web Storage API](https://developer.mozilla.org/en-US/docs/Web/API/Web_Storage_API/Using_the_Web_Storage_API) methods: `Window.sessionStorage` where data persists as long as the session is running, or `Window.localStorage` which has no expiration. Note: when the last private tab is closed, data stored in the localStorage object of a site opened in a private tab or incognito mode is cleared.
9696

9797
<br />
9898

99-
<span style="color:green">**IMPORTANT:**</span> Web Storage API needs to be implemented on the the browser side (client with the DOM). In this case, we make sure to place the javascript script at the bottom of HTML body section.
99+
<span style="color:green">**IMPORTANT:**</span> Web Storage API needs to be implemented on the browser side (client with the DOM). In this case, we make sure to place the javascript script at the bottom of the HTML body section.
100100

101101
>Another option is to use no-sql storage such as `redis`. A topic not in the scope of this exercise.
102102
@@ -152,10 +152,10 @@ A sample of Web Storage API test:
152152
153153
## Next Phases
154154
155-
The followings are potential developments in subsequent iterations to this weather report project:
155+
The followings are potential developments in subsequent iterations of this weather report project:
156156
157157
* Integrate the server with auth0 and/or passport authentication
158158
159-
* Registered members have access to full blown dashboard with maritime alerts, historical weather data, extended forecast, etc.
159+
* Registered members have access to a full-blown dashboard with maritime alerts, historical weather data, extended forecasts, etc.
160160
161161
* Build and make mobile apps available to subscribed members.

0 commit comments

Comments
 (0)