Table of Contents
Deno - The Complete Introduction by Maximilian Schwarzmuller
Maximilian Schwarzmuller is one of Cloud Monk's favorite teachers of programming on the Internet.
Deno by
Deno - The Complete Introduction
Learn everything you need to work with Deno, the brand-new JavaScript runtime created by Node.js founder Ryan Dahl
Deno could be the next big thing - and this courses teaches it from the ground up, with real applications and practical examples!
Deno.js is a JavaScript runtime - just like Node.js is - created by the creator of Node.js.
Wait … what?
The creator of NodeJS found that Node suffers from certain problems - or that it at least could be better than it is. And Deno is the result of that thought process: It's “a better Node”.
You can build the same kinds of apps as you can with Node but you benefit from additional strengths that are built-into Deno:
- Secure by default because of Deno's permission system
- Deno embraces modern JavaScript features like async iterators, promises & more
- Support for both JavaScript as well as TypeScript - out of the box, without any extra compiler
- ES Module Support & URL Imports instead of local node_modules management
- This course teaches Deno from the ground up, without any prior experience about Node being assumed. Such experience will help but it's not required!
We'll dive into Deno and we'll build multiple apps to see how you can use Deno to build real web applications.
In detail, here's what's included in the course:
- What is Deno and Why is it interesting?
- Practical Examples & Demo Apps
- Core Concepts of Deno
- Working with the Runtime APIs
- Exploring the Deno Standard Library
- Creating a Web Server with Deno
- Using Third Party Modules
- Working with the Oak Framework to create Web Servers with Ease
- How to connect Deno to a Database (MongoDB)
- Rendering server-side HTML with Templating Engines & Deno
- Building a REST API with Deno
- A Detailed Comparison of Deno & Node
- A Look into the Future of Deno & Whether you should use Deno right now
- Everything is included in this course already - you can go through all those concepts right after enrolling!
Deno is very new!
It has great chances of becoming an important technology but of course it's too early to tell right now. However, what you learn in this course will also help you with Node development AND it will help you judge whether Deno is the right choice for you or if you maybe want to focus on Node first.
Everything is possible with this course since it's created such that it teaches you core fundamentals that apply to both Node and Deno.
Deno knowledge will always be helpful and right now you got the chance of being one of the first to understand this brand-new technology!
10+ hours
100+ lessons
Course Curriculum
Getting Started
- Welcome to this Course! (1:34)
- What is Deno? (9:35)
- Join our Learning Community
- Deno Setup (4:25)
- Writing a First Deno Program (4:32)
- What can you Build with Deno? (2:09)
- Understanding Deno's Ecosystem (7:07)
- Deno's Current Status (4:16)
- Course Outline - What's Inside the Course? (3:39)
- How to Get the Most out of this Course (3:14)
- Useful Resources & Links
- Optional: JavaScript Refresher & TypeScript Introduction
- JavaScript Refresher: Introduction (1:29)
- What are Promises? (11:20)
- Understanding Async Await (6:46)
- Working with Iterators (12:21)
- Async Iterators (7:35)
- TypeScript Introduction: What is TypeScript? (6:02)
- Setting Up TypeScript (4:09)
- Assigning Types (3:29)
- Understanding Type Inference & Casting Conversion (6:10)
- TypeScript Configurations (5:01)
- Understanding Union Types (4:23)
- Working with Object & Array Types (6:17)
- Type Alias & Interfaces (3:22)
- Understanding Generic Types (5:09)
- Summary (0:34)
- Useful Resources & Links
Understanding Core APIs
- Module Introduction (0:43)
- Deno's Philosophy & Browser Compatibility (2:53)
- Writing Some Deno Core Code (5:26)
- Working with Permissions (3:23)
- Deno Visual Studio Code Extension (2:42)
- More About Core APIs (7:51)
- Time to Practice - Problem (1:13)
- Time to Practice - Solution (7:12)
- Understanding the Deno Program Lifecycle (7:16)
- Wrap Up (1:16)
- Useful Resources & Links
Working with the Standard Library & Creating our First Web Server
- Module Introduction (1:07)
- Introducing the Standard Library (2:01)
- How the Web Works (2:15)
- Importing Standard Library Modules (7:04)
- A First Web Server! (7:11)
- Understanding the Import Syntax (5:59)
- Comparing Deno & Node.js (4:36)
- Manipulating Response Body & Headers (5:16)
- Parsing Request Metadata (7:27)
- Parsing Request Data (9:21)
- Wrap Up (1:53)
- Useful Resources & Links
Improving our Development Workflow & Debugging Deno
- Module Introduction (0:52)
- Using the IDE (2:46)
- Using TypeScript (5:05)
- Dealing with Error Messages (4:03)
- Understanding Try Catch (3:41)
- Debugging with Breakpoints & the Debugger (10:28)
- Working with Denon (6:52)
- Using Import Maps (4:35)
- Wrap Up (1:05)
- Useful Resources & Links
Working with “Oak” & Dynamic Templates
- Module Introduction (2:18)
- Understanding Different Kinds of Web Apps (10:18)
- Introducing the Oak Framework (11:13)
- Understanding Multiple Middleware Functions (4:06)
- Adding a Router & Parsing Request Bodies (11:12)
- A First Summary (2:46)
- Introducing Templating Engines (2:39)
- Using the EJS Templating Engine (8:17)
- Static Resources (7:27)
- Serving Static Resources Securely
- Rendering Lists of Data (8:29)
- Adding Basic Input Validation (2:34)
- Handling “Not Found” Errors (7:41)
- Implementing a Different Folder Structure (6:17)
- Useful Resources & Links
Understanding CRUD Operations & the MVC Architecture
- Module Introduction (0:44)
- Create, Read, Update, Delete (CRUD) (5:13)
- Single Read & Dynamic Path Segments (11:35)
- Deleting Data (5:31)
- Updating Data (6:12)
- Introducing the MVC Pattern (2:47)
- Adding a Model (10:11)
- Understanding Controllers (10:40)
- Wrap Up (1:25)
- Useful Resources & Links
Working with Databases
- Module Introduction (1:38)
- Databases: What & How? (6:24)
- How Does Deno Connect to MongoDB? (4:01)
- Setting Up MongoDB (2:51)
- Connecting Deno to MongoDB (10:29)
- Inserting & Using Imports Correctly (7:33)
- Finding & Working with IDs (8:14)
- Updating & Deleting Data in the Database (5:52)
- Handling Errors (10:08)
- Useful Resources & Links
Building REST APIs with Deno
- Module Introduction (1:45)
- What are REST APIs & HTTP Methods? (7:31)
- Designing the API (3:07)
- Understanding the JSON Format (2:26)
- Defining Routes & Controllers (6:28)
- Setting Up the Database Connection (4:57)
- Adding the Create & Find Logic in the Database (8:02)
- Connecting the Controller (6:17)
- Testing the API (4:29)
- Updating Data (8:15)
- Deleting Data (3:20)
- Adding a Frontend (6:08)
- Cross-Origin Resource Sharing (CORS) (8:32)
- Useful Resources & Links
Course Roundup & Next Steps
- Module Introduction (0:48)
- Working with Node.js (2:59)
- Deno vs Node (11:38)
- What Should you Learn? (4:12)
- How to Continue? (1:54)
- Useful Resources & Links
Course Prerequisites
Basic JavaScript experience is required (JavaScript - The Complete Guide)