Recently Released.

Newly Released in the last 30 days
Video preview
Adocasts Plus Exclusive
Exclusive
Listing Access Tokens

Listing an Organization's Access Tokens

In this lesson, we'll query all of our organization's access tokens and filter out any tokens that are expired. Then, we'll list the organization's tokens showing it's name, abilities, when it was created, and when it was last used.

Video preview
Adocasts Plus Exclusive
Free in 1 day
OAT vs JWT

Opaque Access Tokens (OAT) vs JSON Web Tokens (JWT)

In this lesson, we'll take a step back to understand the differences between the tokens we're using, which are Opaque Access Tokens (OAT), and JSON Web Tokens (JWT). We'll discuss security, scalability, and what makes up each token.

Video preview
Creating Access Tokens Part 2: VueJS

Creating Access Tokens Part 2: Inertia/Vue

In this lesson, we'll rig up the create access token route we created in the last lesson to a form within our Vue application. We'll also stub the overall manage access tokens card for the organization itself.

Video preview
Creating Access Tokens Part 1: AdonisJS

Creating Access Tokens Part 1: AdonisJS

In this lesson, we'll add a route to the settings portion of our application allowing the user to create an opaque access token (OAT), with the desired permissions, for the active organization.

Video preview
Access Token Abilities

Defining Access Token Abilities & DTO

In this lesson, we'll finish up our preparation work by creating a data transfer object (DTO) for our access tokens. Then, we'll define what our token abilities will be within our application's API.

Video preview
Separation of Concerns

Separation of API & Web Auth Guard Concerns

In this lesson, we'll restrict our routes to their applicable authentication guard. Ensuring our web routes can properly authorize using their role-based authorization and our API can properly authorize using our access token abilities.

Video preview
Configuring Api Authentication

Configuring Access Token Auth on top of Session Auth

In this lesson, we'll get opaque access tokens configured within our AdonisJS application on top of the already configured session/web authentication. This will include configuring the guard and setting up the db access token provider.

Video preview

Overview of our Database Schema

In this lesson, we'll take a high level look at our database's schema so that we have an understanding at the entities and models at play and how they relate to one another within our application.

Video preview
Getting Familiar with our Web Project

Getting Familiar with our Web Project

In this lesson, we'll quickly walk through the web application we've cloned down to get familiar with the data at play, how it's presented to the user, and the features at hand.

Video preview
Getting Up and Running

Getting the Web Project Up & Running

We'll get our web project cloned down. Then, we'll get it configured by first creating our database and running our migrations and seeder. Lastly, we'll get a test SMTP email inbox set up through MailTrap.

Video preview
Goal of this Series

Goal of this Series

We'll cover the scope of this series and show some of the functionalities we'll be building throughout, which include an access token management panel, opaque access token authentication using an organization model, and building an API.

Lessons.

Video preview
Singleton Services and the Idea of Caching
Let's Learn AdonisJS 6 #2.12
・
Jan 31, 24

Singleton Services and the Idea of Caching

In this lesson, we'll learn about singleton services and how to use them as a store to hold temporary information throughout our server's life by building a simple in-memory caching service.

Video preview
Vite and Our Assets
Let's Learn AdonisJS 6 #2.5
・
Jan 24, 24

Vite and Our Assets

In this lesson, we'll learn how Vite is integrating into our EdgeJS views to serve our JavaScript and CSS files.

Video preview
Adocasts Plus Exclusive
Exclusive
Mixins and Compose
Dec 17, 23

A Deep Dive Into Mixins & Compose

In this lesson, we'll walk through what mixins are and how they work by first inspecting them as plain objects then working our way into classes then finally TypeScript. We'll then implement mixins via AdonisJS' compose utility.

Desktop app for NPM
Dec 08, 22

Easily Manage & Update Your NPM Packages With This Desktop App!

In this video, we'll see how we can easily audit, manage, and update our NPM packages/dependencies and their versions using a graphical user interface (GUI) called the NPM Desktop Manager.

Understanding Promises in Loops
Nov 24, 22

Understanding JavaScript Promises in ForEach, Map, and Reduce Loops

In this lesson, we'll take a look at how promises work when we try to await them inside newer callback-based loops, like forEach, map, and reduce.

AdonisJS Quick Tip #10.0
・
Oct 09, 22

How To Use Vue 3 with TypeScript in an AdonisJS Project

In this lesson, we’ll learn how to set up a Vue 3 TypeScript application within our AdonisJS project using Webpack Encore. We’ll start by getting Vue 3 working, then sprinkle in TypeScript support.

Cross-Tab Communication #3.0
・
Dec 12, 20

Cross-Tab Communication in JavaScript using a BroadcastChannel

We discuss how to do cross-tab communication with a BroadcastChannel, the browser's native API to communicate across browser instances. It's rather similar to using a SharedWorker, just without the worker.

Cross-Tab Communication #2.0
・
Nov 28, 20

Cross-Tab Communication in JavaScript using a SharedWorker

In this lesson we'll be going over how to do cross-tab communication using a SharedWorker. SharedWorkers are Web Workers that are sharable across browser-instances (tabs, windows, etc).

Cross-Tab Communication #1.0
・
Nov 18, 20

How To Do Cross-Tab Communication In JavaScript With LocalStorage

In this lesson, we'll be going over how to do cross-tab communication using LocalStorage. Of the three methods we'll be discussing, this one is the most browser compatible method; despite it being a workaround.

Aug 08, 20

All About JavaScript Arrow Functions

Arrow functions offer a concise alternative for standard functions. Though, there are important functionality differences regarding this binding, constructors, generators, and more.

Aug 05, 20

Introducing and Understanding JavaScript Promises

A promise allows us to delay the execution of code that's dependent upon information retrieved by an asynchronous operation. We'll expand on what this means, how to use promises, and how to go about creating one.