Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Spelling #1745

Open
wants to merge 172 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
172 commits
Select commit Hold shift + click to select a range
2b3b318
spelling: absolute
jsoref May 17, 2024
15aec74
spelling: abstraction
jsoref May 17, 2024
025191f
spelling: abstractions
jsoref May 17, 2024
93a23b1
spelling: accept
jsoref May 17, 2024
ee5d225
spelling: accidentally
jsoref May 17, 2024
64673a5
spelling: add
jsoref May 17, 2024
3278542
spelling: algorithms
jsoref May 17, 2024
754b9f4
spelling: and
jsoref May 17, 2024
bb21af6
spelling: application
jsoref May 17, 2024
9f9f142
spelling: approach
jsoref May 17, 2024
059d9fd
spelling: are
jsoref May 17, 2024
afaacbe
spelling: authentication
jsoref May 17, 2024
f9bfbe9
spelling: authorization
jsoref May 17, 2024
caab22e
spelling: background
jsoref May 17, 2024
35669ef
spelling: been
jsoref May 17, 2024
ef97dbf
spelling: belong
jsoref May 17, 2024
10a869f
spelling: bieber
jsoref May 17, 2024
2a6a07d
spelling: boundaries
jsoref May 17, 2024
0c4dd51
spelling: boundary
jsoref May 17, 2024
449ea0f
spelling: button
jsoref May 17, 2024
59c38f7
spelling: can
jsoref May 17, 2024
a749e03
spelling: cancellations
jsoref May 17, 2024
a3b245a
spelling: captions
jsoref May 17, 2024
09e6162
spelling: case-insensitive
jsoref May 17, 2024
3b13187
spelling: cloud
jsoref May 17, 2024
10ad2f7
spelling: committed
jsoref May 17, 2024
73a96e7
spelling: commonly
jsoref May 17, 2024
4ffd5c0
spelling: compile
jsoref May 17, 2024
305b2d2
spelling: compiler
jsoref May 17, 2024
76496d9
spelling: condition
jsoref May 17, 2024
3d2b41c
spelling: conflict
jsoref May 17, 2024
2d6cb6a
spelling: connect
jsoref May 17, 2024
e1b6bcf
spelling: contained
jsoref May 17, 2024
b8b4b5a
spelling: conventions
jsoref May 17, 2024
cae678c
spelling: corresponding
jsoref May 17, 2024
03971a4
spelling: corresponds
jsoref May 17, 2024
30a9c21
spelling: course
jsoref May 17, 2024
397e2ca
spelling: decided
jsoref May 17, 2024
b16d6b8
spelling: decorator
jsoref May 17, 2024
c0fdda0
spelling: deletes
jsoref May 17, 2024
aed58c9
spelling: demonstrates
jsoref May 17, 2024
4ff9287
spelling: dependencies
jsoref May 17, 2024
e7d483c
spelling: descendents
jsoref May 17, 2024
da3d36c
spelling: destructuring
jsoref May 17, 2024
941bc9d
spelling: dockerize
jsoref May 17, 2024
b18bc5b
spelling: document
jsoref May 17, 2024
2a417fa
spelling: documents
jsoref May 17, 2024
b49ea08
spelling: draggable
jsoref May 17, 2024
aa45f6e
spelling: duration
jsoref May 17, 2024
65c7f25
spelling: elliptical
jsoref May 17, 2024
5bf93a9
spelling: embedded
jsoref May 17, 2024
8810b52
spelling: encountered
jsoref May 17, 2024
66da97b
spelling: environment
jsoref May 17, 2024
daa8437
spelling: equivalent
jsoref May 17, 2024
a2e7987
spelling: evaluate
jsoref May 17, 2024
25af468
spelling: existence
jsoref May 17, 2024
f243c95
spelling: existing
jsoref May 17, 2024
6127afe
spelling: explanation
jsoref May 17, 2024
daaf6bc
spelling: express
jsoref May 17, 2024
d34d4ec
spelling: extremely
jsoref May 17, 2024
2689dc4
spelling: familiar
jsoref May 17, 2024
e222e63
spelling: firestarter
jsoref May 17, 2024
e9d8365
spelling: firestore
jsoref May 17, 2024
aa80740
spelling: garfunkel
jsoref May 17, 2024
cfb1ce4
spelling: generally
jsoref May 17, 2024
a8085e3
spelling: geolocation
jsoref May 17, 2024
e6ef816
spelling: github
jsoref May 17, 2024
83673f1
spelling: gracefully
jsoref May 17, 2024
8b36423
spelling: gradient
jsoref May 17, 2024
6c2ee5c
spelling: higher
jsoref May 17, 2024
9d55970
spelling: hypothetical
jsoref May 17, 2024
9265af8
spelling: implement
jsoref May 17, 2024
269787f
spelling: implementations
jsoref May 17, 2024
c15fdc6
spelling: include
jsoref May 17, 2024
1778c30
spelling: increase
jsoref May 17, 2024
9417cc5
spelling: increment
jsoref May 17, 2024
6f9964f
spelling: indices
jsoref May 17, 2024
dcba9e5
spelling: inefficient
jsoref May 17, 2024
0be8642
spelling: inheritance
jsoref May 17, 2024
734f432
spelling: inherited
jsoref May 17, 2024
8af4251
spelling: initial
jsoref May 17, 2024
2490d62
spelling: initialize
jsoref May 17, 2024
647877e
spelling: interact
jsoref May 17, 2024
844b49c
spelling: interpreted
jsoref May 17, 2024
ea8bd77
spelling: its
jsoref May 17, 2024
84a6308
spelling: javascript
jsoref May 17, 2024
f3d2225
spelling: languages
jsoref May 17, 2024
d79ccd6
spelling: level
jsoref May 17, 2024
c2068c3
spelling: list
jsoref May 17, 2024
82fbcce
spelling: macgyver
jsoref May 17, 2024
53dc15c
spelling: macos
jsoref May 17, 2024
385a658
spelling: malformed
jsoref May 17, 2024
bfa57db
spelling: mapbox
jsoref May 17, 2024
dfafa3c
spelling: maximum
jsoref May 17, 2024
933acd8
spelling: metering
jsoref May 17, 2024
515cb1b
spelling: microservice
jsoref May 17, 2024
3dcca8b
spelling: modifications
jsoref May 17, 2024
73af93c
spelling: multisite
jsoref May 17, 2024
68079bb
spelling: neither/nor
jsoref May 17, 2024
e90438f
spelling: observable
jsoref May 17, 2024
acfffba
spelling: offset
jsoref May 17, 2024
a2e860d
spelling: one
jsoref May 17, 2024
147a105
spelling: opaque
jsoref May 17, 2024
b1d84e7
spelling: opportunities
jsoref May 17, 2024
0c4f3b4
spelling: package
jsoref May 17, 2024
c8eac8e
spelling: parentheses
jsoref May 17, 2024
a233403
spelling: playwright
jsoref May 17, 2024
d4aaf6c
spelling: plumbing
jsoref May 17, 2024
c4b75da
spelling: powered
jsoref May 17, 2024
d73a139
spelling: predictable
jsoref May 17, 2024
fe36147
spelling: preference
jsoref May 17, 2024
c81babe
spelling: priority
jsoref May 17, 2024
8ba5253
spelling: productivity
jsoref May 17, 2024
dd274ce
spelling: protractor
jsoref May 17, 2024
45610eb
spelling: provides
jsoref May 17, 2024
9eed5f3
spelling: quickly
jsoref May 17, 2024
4dc8f95
spelling: recently
jsoref May 17, 2024
97c3e57
spelling: recipes
jsoref May 17, 2024
11e61f3
spelling: refactor
jsoref May 17, 2024
84f2c3e
spelling: reference
jsoref May 17, 2024
81349c6
spelling: related
jsoref May 17, 2024
e61a668
spelling: relatively
jsoref May 17, 2024
c647819
spelling: release
jsoref May 17, 2024
5eb1ea7
spelling: render
jsoref May 17, 2024
6c12d83
spelling: rendertron
jsoref May 17, 2024
23c4127
spelling: repetitive
jsoref May 17, 2024
29e3316
spelling: requesting
jsoref May 17, 2024
d965f4f
spelling: responsibly
jsoref May 17, 2024
40829e5
spelling: reusable
jsoref May 17, 2024
418d7db
spelling: reuse
jsoref May 17, 2024
054aafa
spelling: route
jsoref May 17, 2024
719eba2
spelling: segment
jsoref May 17, 2024
c8ad7a4
spelling: severity
jsoref May 17, 2024
2ed11cb
spelling: should
jsoref May 17, 2024
9f74b1e
spelling: signature
jsoref May 17, 2024
d0d0412
spelling: similar
jsoref May 17, 2024
f07a03d
spelling: simple
jsoref May 17, 2024
0a763b2
spelling: simplified
jsoref May 17, 2024
9142037
spelling: simply
jsoref May 17, 2024
aafea71
spelling: single
jsoref May 17, 2024
cdcf389
spelling: snapshot
jsoref May 17, 2024
ffe0897
spelling: sometimes
jsoref May 17, 2024
7759390
spelling: source
jsoref May 17, 2024
c08ba07
spelling: specific
jsoref May 17, 2024
e8e7130
spelling: spies
jsoref May 17, 2024
07b0135
spelling: structure
jsoref May 17, 2024
7b866da
spelling: submission
jsoref May 17, 2024
0dfa8d3
spelling: subscriptions
jsoref May 17, 2024
e15e89b
spelling: syntactic
jsoref May 17, 2024
5c33405
spelling: tailwind
jsoref May 17, 2024
78f1cd7
spelling: template
jsoref May 17, 2024
b2e6ed0
spelling: than
jsoref May 17, 2024
126bf5f
spelling: that
jsoref May 17, 2024
9a5c096
spelling: the
jsoref May 17, 2024
c972a29
spelling: this
jsoref May 17, 2024
51c83ac
spelling: through
jsoref May 17, 2024
01155e7
spelling: throwing
jsoref May 17, 2024
8db540f
spelling: transaction
jsoref May 17, 2024
2dd3914
spelling: trivial
jsoref May 17, 2024
5563b19
spelling: typescript
jsoref May 17, 2024
ceb3333
spelling: unauthorized
jsoref May 17, 2024
948d5ba
spelling: updates
jsoref May 17, 2024
a43ffe5
spelling: use
jsoref May 17, 2024
995c94b
spelling: using
jsoref May 17, 2024
594ed0e
spelling: vertices
jsoref May 17, 2024
4599ce8
spelling: videos
jsoref May 17, 2024
8d54a74
spelling: walkthrough
jsoref May 17, 2024
68f1cc8
spelling: with
jsoref May 17, 2024
26d3cd8
spelling: workflow
jsoref May 17, 2024
3395d86
spelling: wraps
jsoref May 17, 2024
a8855c2
spelling: xml
jsoref May 17, 2024
980740e
spelling: you
jsoref May 17, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions app/components/ui/route-loader.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@
.gradient-loader {
@apply bg-gradient-to-r from-orange-500 via-purple-500 to-pink-500;
background-size: 200% 200%;
animation: gradiant-move 1s infinite;
animation: gradient-move 1s infinite;
}
@keyframes gradiant-move {
@keyframes gradient-move {
Comment on lines -20 to +22
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is harmless; I don't see any particular reason to use a creative spelling...

0%{background-position:left}
50%{background-position:right}
100%{background-position:left}
Expand Down
2 changes: 1 addition & 1 deletion app/components/video/video-player.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
export let video: number | string;
export let type: 'vimeo' | 'youtube';
export let free = false;
export let single = false; // prevent autoplay on signle video pages
export let single = false; // prevent autoplay on single video pages

// let player: Player;
let ref: HTMLElement;
Expand Down
2 changes: 1 addition & 1 deletion content/contributors/jeroen.ouwehand.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ links:
medium: https://medium.com/@jeroenouw
---

Jeroen is a full-stack developer from Rotterdam (The Netherlands) and is currently working for a bank. Sometimes writes posts on Medium or contribute on Github.
Jeroen is a full-stack developer from Rotterdam (The Netherlands) and is currently working for a bank. Sometimes writes posts on Medium or contribute on GitHub.
2 changes: 1 addition & 1 deletion content/contributors/marc-stammerjohann.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ links:
portfolio: https://marcjulian.de
---

Marc Stammerjohann is a freelance full-stack software engineer developing apps with Ionic, Angular, Typescript, Java and Kotlin. He is interested in Web Components, nest and Prisma lately. In his free time he enjoys inline skating, traveling, diving and reading books.
Marc Stammerjohann is a freelance full-stack software engineer developing apps with Ionic, Angular, TypeScript, Java and Kotlin. He is interested in Web Components, nest and Prisma lately. In his free time he enjoys inline skating, traveling, diving and reading books.
2 changes: 1 addition & 1 deletion content/contributors/zack-derose.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,4 @@ links:

Zack is a <a href="https://developers.google.com/community/experts/directory/profile/profile-zack-derose">GDE for Google</a>, as well as an Engineer and Engineering Manager for <a href="http://nx.dev">Nx</a>, and an avid fan of <a href="https://supabase.com/">Supabase</a>.

Zack always bets on Javascript (and Typescript), but he also enjoys Postgres, making videos, and has been dabbling recently in shit-posting on Twitter.
Zack always bets on JavaScript (and TypeScript), but he also enjoys Postgres, making videos, and has been dabbling recently in shit-posting on Twitter.
2 changes: 1 addition & 1 deletion content/courses/angular/app-shared-module.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ export class AppModule { }

### Step 2 - Consolidate Imports

Avoid duplication by consolidating your imports with the the spread syntax. We will be using the common material modules throughout the course. All Material modules listed below will be used in this app.
Avoid duplication by consolidating your imports with the spread syntax. We will be using the common material modules throughout the course. All Material modules listed below will be used in this app.

{{< file "ngts" "shared.module.ts" >}}
```typescript
Expand Down
2 changes: 1 addition & 1 deletion content/courses/angular/kanban-animation.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ emoji: 🍱
video_length: 3:06
---

Animate the the CDK Drag & Drop elements using CSS transitions.
Animate the CDK Drag & Drop elements using CSS transitions.


## Full Styles
Expand Down
2 changes: 1 addition & 1 deletion content/courses/angular/kanban-database-service.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ export class BoardService {
}

/**
* Remove a specifc task from the board
* Remove a specific task from the board
*/
removeTask(boardId: string, task: Task) {
return this.db
Expand Down
4 changes: 2 additions & 2 deletions content/courses/angular/user-email-pass.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ video_length: 11:32
ng g component user/email-login
```

Your user module should look similer to this:
Your user module should look similar to this:

{{< file "ngts" "user.module.ts" >}}
```typescript
Expand Down Expand Up @@ -52,7 +52,7 @@ Make sure to declare the form in the login page for unauthenticated users.
</div>
```

### Step 2 - Typescript Logic
### Step 2 - TypeScript Logic

{{< file "ngts" "email-login.component.ts" >}}
```typescript
Expand Down
8 changes: 4 additions & 4 deletions content/courses/cloud-functions/intro-course-resources.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: Resources
lastmod: 2019-02-27T09:32:30-07:00
draft: false
description: Helpful links for the the Cloud Functions Master Course
description: Helpful links for the Cloud Functions Master Course
weight: 1
emoji: 👶
free: true
Expand All @@ -14,7 +14,7 @@ If you get stuck or have questions, feel free to reach out for 1-on-1 support:
- Chat Support on Slack


I recommend following along and writing your own code from scratch, but the source code is available on Github as a reference:
I recommend following along and writing your own code from scratch, but the source code is available on GitHub as a reference:

- [Project Source Code](https://github.com/codediodeio/cloud-functions-master-course)

Expand All @@ -25,7 +25,7 @@ We are only scratching the surface, check out these learning resources:
- Official Firebase Functions Docs and Video Series


Also, follow me on Github and Twitter to stay up to date:
Also, follow me on GitHub and Twitter to stay up to date:

- Github Profile
- GitHub Profile
- Twitter @fireship_dev or @jeffdelaney23
2 changes: 1 addition & 1 deletion content/courses/firebase-security/advanced-chat-example.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ vimeo: 486584623
emoji: 🛡️
video_length: 4:46
---
Firebase Rules for hypothertical chat application
Firebase Rules for hypothetical chat application

{{< file "firebase" "firestore.rules" >}}
```javascript
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ video_length: 1:53

## Course Resources

- [Query Code Snippets on Github](https://gist.github.com/codediodeio/513bf77ee45be6d38d27868f5345a002)
- [Query Code Snippets on GitHub](https://gist.github.com/codediodeio/513bf77ee45be6d38d27868f5345a002)
- [Cloud Firestore Docs](https://firebase.google.com/docs/firestore/)


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ const specificReview = db.collection('reviews').doc(`${bookId}_${authorId}`);


// 8. Map
// Reviews embadded on books
// Reviews embedded on books
const bookWithReviews = db.collection('books').doc(bookId);
const userReviews = db.collection('books').orderBy('reviews.jeff-delaney');

Expand Down
2 changes: 1 addition & 1 deletion content/courses/flutter-firebase-v1/intro-flutter-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ video_length: 5:37
1. Install Flutter and run `flutter doctor`.
1. Add Flutter to your Path
1. Download Android Studio and configure an Emulator.
1. Download XCode (MacOS)
1. Download XCode (macOS)

## Dependencies

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ class LoginScreenState extends State<LoginScreen> {
}
}

/// A resuable login button for multiple auth methods
/// A reusable login button for multiple auth methods
class LoginButton extends StatelessWidget {
final Color color;
final IconData icon;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ video_length: 5:25
chapter_start: Quiz UI
---

Reference the [Topics Screen Source on Github](https://github.com/fireship-io/flutter-firebase-quizapp-course/blob/master/lib/screens/topics.dart)
Reference the [Topics Screen Source on GitHub](https://github.com/fireship-io/flutter-firebase-quizapp-course/blob/master/lib/screens/topics.dart)
4 changes: 2 additions & 2 deletions content/courses/flutter-firebase/auth-login-screen.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ video_length: 3:53

# Anonymous Auth

Enable anonymous auth in the Firebase console, then implemment it in the auth service.
Enable anonymous auth in the Firebase console, then implement it in the auth service.

{{< file "flutter" "services/auth.dart" >}}
```dart
Expand All @@ -36,7 +36,7 @@ class AuthService {

## Login Screen

Create a login screen and resuable button to support multiple login methods.
Create a login screen and reusable button to support multiple login methods.

{{< file "flutter" "login.dart" >}}
```dart
Expand Down
2 changes: 1 addition & 1 deletion content/courses/flutter-firebase/firestore-fetch.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ import 'package:quizapp/services/models.dart';
class FirestoreService {
final FirebaseFirestore _db = FirebaseFirestore.instance;

/// Reads all documments from the topics collection
/// Reads all documents from the topics collection
Future<List<Topic>> getTopics() async {
var ref = _db.collection('topics');
var snapshot = await ref.get();
Expand Down
2 changes: 1 addition & 1 deletion content/courses/flutter-firebase/intro-flutter-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,6 @@ video_length: 3:20
1. Add Flutter to your Path
1. Run `flutter doctor`
1. Download [Android Studio](https://developer.android.com/studio) and configure an Emulator.
1. Download XCode (MacOS only)
1. Download XCode (macOS only)


2 changes: 1 addition & 1 deletion content/courses/flutter-firebase/release-android.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ chapter_start: Release
video_length: 4:23
---

[Official Android Flutter Relese Guide](https://flutter.dev/docs/deployment/android)
[Official Android Flutter Release Guide](https://flutter.dev/docs/deployment/android)
2 changes: 1 addition & 1 deletion content/courses/git/advanced-bonus-tips.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ free: true
---


Let's wrap up the course with a fun breakdown of some advanced git techniques that will increase your producivity.
Let's wrap up the course with a fun breakdown of some advanced git techniques that will increase your productivity.
2 changes: 1 addition & 1 deletion content/courses/git/basics-install.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ On Windows, I recommend downloading [Git for Windows](https://gitforwindows.org/

## Mac Installation

On MacOS, I recommend installing git with [Homebrew](https://brew.sh/).
On macOS, I recommend installing git with [Homebrew](https://brew.sh/).

{{< file "terminal" "command line" >}}
```bash
Expand Down
2 changes: 1 addition & 1 deletion content/courses/git/basics-vscode.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ quiz: true
---

<quiz-modal options="mod:diff:shift:mutation" answer="diff" prize="11">
<h5>Which term describes the changes between the working tree and previously comitted files?</h5>
<h5>Which term describes the changes between the working tree and previously committed files?</h5>
</quiz-modal>

VS Code is a powerful tool for working with git. You can use it to run commands without the CLI, sync it up to GitHub, and to manage your git repositories. Learn more in the [official docs](https://code.visualstudio.com/docs/editor/versioncontrol).
2 changes: 1 addition & 1 deletion content/courses/git/collab-merge-conflicts.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ quiz: true
---

<quiz-modal options="--quit:--oops:--fml:--abort" answer="--abort" prize="17">
<h5>Which flag allows you to safely quit the merge conflit process?</h5>
<h5>Which flag allows you to safely quit the merge conflict process?</h5>
</quiz-modal>

## How Merge Conflicts Happen
Expand Down
2 changes: 1 addition & 1 deletion content/courses/git/remote-codespaces.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: GitHub Codespaces
description: Run your repo on any machine with a cloud-powerd VS Code instance
description: Run your repo on any machine with a cloud-powered VS Code instance
weight: 25
lastmod: 2021-09-05T10:23:30-09:00
draft: false
Expand Down
2 changes: 1 addition & 1 deletion content/courses/ionic/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ The **Ionic4 Master Course** will teach you the fundamentals of full-stack cross

### 🗿 What will I build?

This is a project-based course that starts from zero and works up to an **authenticated realtime todo list with push notifications**. While that may not sound super exciting, it provides an ideal foundation to showcase the UI features offered by Ionic and connent them to live cloud infrastructure.
This is a project-based course that starts from zero and works up to an **authenticated realtime todo list with push notifications**. While that may not sound super exciting, it provides an ideal foundation to showcase the UI features offered by Ionic and connect them to live cloud infrastructure.


### 🐌 What will I Learn?
Expand Down
2 changes: 1 addition & 1 deletion content/courses/ionic/intro-resources.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ Bookmark these pages:

### Project

The soruce code if the *source of truth* for this project. Updates to video content may lag behind code udpates, so always refer to the master branch on Github.
The source code if the *source of truth* for this project. Updates to video content may lag behind code updates, so always refer to the master branch on GitHub.

- [Source Code](https://github.com/codediodeio/ionic4-master-course)
- [Live Demo](https://ionic4-fire.web.app/)
Expand Down
4 changes: 2 additions & 2 deletions content/courses/javascript/beginner-js-functions.md
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ setTimeout(log, 2000);

## Recursive Function

A recursive function is one that calls itself from inside its own function body. If a terminating condition is not provided it will create and infinite loop. Recursive functions are commonly used in algorithm implementations to efficiently handle tasks like binary-tree traversal. Below is an example of a recursive function that traverses the the file system using NodeJS.
A recursive function is one that calls itself from inside its own function body. If a terminating condition is not provided it will create and infinite loop. Recursive functions are commonly used in algorithm implementations to efficiently handle tasks like binary-tree traversal. Below is an example of a recursive function that traverses the file system using NodeJS.

{{< file "js" "fun.js" >}}
```js
Expand Down Expand Up @@ -195,6 +195,6 @@ Find yourself writing repetitive code? Try abstracting it into a custom function

> WET Write Everything Twice, but not Thrice

In this world, we only break down code into custom functions when it is duplicated more than twice. The rational is that it provides more confidence that this extra layer of absctraction is actually required. As programmers, we often try to optimize too early because we're terrified of duplication.
In this world, we only break down code into custom functions when it is duplicated more than twice. The rational is that it provides more confidence that this extra layer of abstraction is actually required. As programmers, we often try to optimize too early because we're terrified of duplication.

In brief, both DRY and WET are useful principles, but neither are perfect - it just takes practice.
2 changes: 1 addition & 1 deletion content/courses/javascript/beginner-js-survival-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ typeof function() {} // function (which inherits from object)

## Truthy vs Falsy

When a value is encounted in a *Boolean* context - such as an `if` statement - it will be coerced into a boolean. If the result is `true` then the value is *truthy* and vice versa. If you're unsure about a value, you can convert it using the logical `!` NOT operator twice, or a double-bang as I like to call it `!!`.
When a value is encountered in a *Boolean* context - such as an `if` statement - it will be coerced into a boolean. If the result is `true` then the value is *truthy* and vice versa. If you're unsure about a value, you can convert it using the logical `!` NOT operator twice, or a double-bang as I like to call it `!!`.


{{< file "js" "index.js" >}}
Expand Down
2 changes: 1 addition & 1 deletion content/courses/javascript/beginner-js-where-to-run.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ In Chrome, you can open the [developer console](https://developers.google.com/we

## Run JavaScript with a Framework

It is worth mentioning that frameworks like React, Angular, Svelte, etc will take care of the building & running of your app automatically and provide framework-specific tooling and steps for running code. In the real world, you are more likely to use the tooling provided by the framework to run your code, as opposed to the basic methods shown in this couse.
It is worth mentioning that frameworks like React, Angular, Svelte, etc will take care of the building & running of your app automatically and provide framework-specific tooling and steps for running code. In the real world, you are more likely to use the tooling provided by the framework to run your code, as opposed to the basic methods shown in this course.

## Run JavaScript in a Sandbox

Expand Down
2 changes: 1 addition & 1 deletion content/courses/javascript/concepts-modules.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ A [module](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules

First, a file exports (package) something useful...

{{< file "js" "awesome-pacakge.js" >}}
{{< file "js" "awesome-package.js" >}}
```js
export default '🧁';
```
Expand Down
2 changes: 1 addition & 1 deletion content/courses/javascript/intro-how-js-works.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ Keep in mind, you don't *need* to know these concepts to start using JavaScript

So this begs the question... How does JavaScript handle jobs at the same time (i.e. concurrently)?

**Event Loop** refers to a feature implemented by engines like V8 that allow JS to offload tasks to separate threads. Browser and Node APIs execute long-running tasks separately from the the main JS thread, then enqueue a `callback` function (which you define) to run on the main thread when the task is complete. This is why JS is called *non-blocking* because it should only ever wait for synchronous code from your JS functions. Think of the [Event Loop](https://developer.mozilla.org/en-US/docs/Web/JavaScript/EventLoop) as message queue between the single JS thread and the OS.
**Event Loop** refers to a feature implemented by engines like V8 that allow JS to offload tasks to separate threads. Browser and Node APIs execute long-running tasks separately from the main JS thread, then enqueue a `callback` function (which you define) to run on the main thread when the task is complete. This is why JS is called *non-blocking* because it should only ever wait for synchronous code from your JS functions. Think of the [Event Loop](https://developer.mozilla.org/en-US/docs/Web/JavaScript/EventLoop) as message queue between the single JS thread and the OS.

{{< file "js" "event-loop.js" >}}
```js
Expand Down
2 changes: 1 addition & 1 deletion content/courses/js/101-basics.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ quiz: true
free: true
---

<quiz-modal options="garbage-collected:intrepreted:statically-typed:fun" answer="statically-typed" prize="19">
<quiz-modal options="garbage-collected:interpreted:statically-typed:fun" answer="statically-typed" prize="19">
<h6>Which term does NOT describe JavaScript?</h6>
</quiz-modal>

Expand Down
2 changes: 1 addition & 1 deletion content/courses/js/102-higher-order-functions.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: Higher Order Functions
description: What is a higer order function or HOF?
description: What is a higher order function or HOF?
weight: 25
lastmod: 2022-11-11T10:23:30-09:00
draft: false
Expand Down
4 changes: 2 additions & 2 deletions content/courses/js/102-nullish-coalescing.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: Nullish Coalescing
description: How nullish coalescing is realted to truthy and falsy values
description: How nullish coalescing is related to truthy and falsy values
weight: 24
lastmod: 2022-11-11T10:23:30-09:00
draft: false
Expand All @@ -17,7 +17,7 @@ quiz: true

## Nullish Coalescing

Nullish coalescing is a relativly new operator that was introduced in ES2020. It is similar to the logical OR operator `||`, but it only returns the right-hand side if the left-hand side is `null` or `undefined`.
Nullish coalescing is a relatively new operator that was introduced in ES2020. It is similar to the logical OR operator `||`, but it only returns the right-hand side if the left-hand side is `null` or `undefined`.

```js
const foo = null ?? 'bar';
Expand Down
2 changes: 1 addition & 1 deletion content/courses/js/102-optional-chaining.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ quiz: true

## Optional Chaining

Optional chaining `?` is a relatively new operator that was introduced in ES2020. It allows you to call object properties safely, without throwing an error. When calling properties without this operator, you many crash your applcation with the error `Cannot read property 'foo' of undefined`.
Optional chaining `?` is a relatively new operator that was introduced in ES2020. It allows you to call object properties safely, without throwing an error. When calling properties without this operator, you many crash your application with the error `Cannot read property 'foo' of undefined`.

```js
const person = { };
Expand Down
2 changes: 1 addition & 1 deletion content/courses/js/102-prototype-chain.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ chapter_start: Advanced Concepts

## Prototype Chain

The [prototype chain](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Inheritance_and_the_prototype_chain) is a mechanism that allows objects to inherit properties and methods from other objects. Every object can have exactly one prototype object. That prototype object can also have a prototype object, and so on, creating a chain of inheritied properties and methods. The end of this chain is called the `null` prototype.
The [prototype chain](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Inheritance_and_the_prototype_chain) is a mechanism that allows objects to inherit properties and methods from other objects. Every object can have exactly one prototype object. That prototype object can also have a prototype object, and so on, creating a chain of inherited properties and methods. The end of this chain is called the `null` prototype.

In general, you don't need to think about the prototype chain when doing everyday JavaScript development. However, it is important to understand how it works because it's the basis for the `class` keyword and essential knowledge as you dive deeper into the language.

Expand Down
Loading