Globally Altering the Base Model
Configuring Multi-Auth Guards
Inspecting Lucid Queries
Redirect back after login
Rate Limiting HTTP Requests
Optional Relationship Loading
Filtering by Publish Date
Searching and Filtering Lessons
Reusing Search Courses
Filtering by a Number or Array of Numbers
Advanced String Filtering
Basic Course Filtering
Getting A Module's Lessons
Lesson Operations
Fixing ESLint Integration

Get Ship Done

Adocasts teaches you how to ship NodeJS apps in no time using AdonisJS and it's many built-in batteries.

Adocasts by the numbers

Comprehensive library
414
Lessons & counting
Skills mastered
33.9k
Lesson completions
Growing community
3.8k
Members strong
Vibrant discussions
1k
Comments & forum posts

Learn one step at a time

AdonisJS Scenarios

In this ongoing series, we'll cover various scenarios you're likely to run into while developing or maintaining an AdonisJS application. Topics will range from authentication challenges to database management, testing, and more.

2 Lessons
20m 3s

Adding an API to an AdonisJS Web App

In this series, we'll add a API, using Opaque Access Tokens for authentication, to a preexisting web application. We'll implement dual-guard authentication, add a token management panel, and authenticate our API directly with an organization model!

43 Lessons
5h 31m

Building with AdonisJS & Inertia

We'll learn how to use InertiaJS with AdonisJS 6 to build a feature-complete application, called PlotMyCourse. Our application will use server-side rendering (SSR), Vue 3, and Shadcn-Vue. It'll feature organizations, drag-and-drop, and lots of forms.

91 Lessons
14h 5m

AdonisJS In 30

In this series, we'll highlight various features and functionalities in AdonisJS you can complete in about 30 minutes or less.

9 Lessons
2h 59m

Dive into a topic

null

AdonisJS

17 series 405 lessons
AdonisJS
EdgeJS

EdgeJS

8 series 90 lessons
EdgeJS
Database

Lucid

12 series 155 lessons
Database
Authentication

Authentication

9 series 44 lessons
Authentication
Terminal

Ace CLI

3 series 15 lessons
Action

Actions

2 series 36 lessons
AlpineJS Icon

AlpineJS

2 series 7 lessons
Authorization badge

Authorization

3 series 14 lessons
null

AWS Amplify

1 series 8 lessons
Padlock

Bouncer

1 series 4 lessons
Components

Components

3 series 35 lessons
Control panel icon

Controllers

7 series 35 lessons
Debugging icon

Debugging

1 series 4 lessons
Drive

Drive

1 series 1 lessons
Email

Email

2 series 6 lessons
Filtering

Filtering

4 series 12 lessons
HTMX

HTMX

1 series 5 lessons
HttpContext

HttpContext

6 series 26 lessons
null

InertiaJS

2 series 102 lessons
null

JavaScript

3 series 11 lessons
Markdown icon

Markdown

1 series 3 lessons
null

Nuxt

1 series 7 lessons
Pagination

Pagination

2 series 8 lessons
Rate Limiting

Rate Limiting

1 series 3 lessons
Redis logo

Redis

1 series 2 lessons
Router

Router

6 series 50 lessons
Services icon

Services

5 series 18 lessons
Tailwind CSS Icon

Tailwind

4 series 22 lessons
Idea lightbulb

Tips

3 series 24 lessons
TypeScript logo

TypeScript

1 series 10 lessons
Validation dials

Validator

5 series 38 lessons
Vite logo

Vite

1 series 3 lessons
VS Code logo

VS Code

3 lessons
null

VueJS

3 series 90 lessons

Jump straight to the latest

Video preview
Adocasts Plus Exclusive
Free in 3 days
Globally Altering the Base Model
Video preview

How To Globally Alter Lucid's BaseModel

In this lesson, we'll discuss how we can globally alter Lucid's BaseModel to make global changes across all our application's models. We'll walk through globally changing the naming strategy and extras serialization as examples.

Video preview
Configuring Multi-Auth Guards
Video preview

How To Configure & Use Multiple Authentication Guards

In this lesson, we'll walk through how to set up a new AdonisJS project with both session and opaque access token authentication guards. We'll then walk through a quick authentication demo for each and disable CSRF on our API routes.

Video preview
Adocasts Plus Exclusive
Exclusive
Inspecting Lucid Queries
Video preview

Inspecting Lucid Queries for Index Analysis

In this lesson, we'll walk through how you can inspect specific or all Lucid queries within your AdonisJS application. We'll then use this to analyze a slow queries execution plan, determine an appropriate index to add, and add that index via a migration.

Video preview
Redirect back after login
Video preview

How To Redirect Back to the Previous Page After Login with AdonisJS

In this lesson, we'll learn an easy way we can safely redirect our user's back to their original page after they login or register in an AdonisJS application. We'll also verify the URL matches an actual GET route definition within our application.

Video preview
Adocasts Plus Exclusive
Exclusive
Rate Limiting HTTP Requests
Video preview

Rate Limiting an Organization's HTTP Requests

In this lesson, we'll cover how to throttle how often an organization can hit our API using HTTP Rate Limits, which is crucial for preventing spam, limiting content access, and managing server load.

Video preview
Adocasts Plus Exclusive
Exclusive
Optional Relationship Loading
Video preview

User-Defined Relationship Loading

In this lesson, we'll let our users tell us which relationships they'd like to get back in our lesson search. We'll also discuss how to handle nested relationships and what to watch out for.

Video preview
Adocasts Plus Exclusive
Exclusive
Filtering by Publish Date
Video preview

Filtering Lessons by Publication Date

In this lesson, we'll add the ability to search lessons by their publish date and time. We'll utilize before and after properties to allow for filtering that can look forward, backward, or within a specific date range on our lesson's publish at column.

Video preview
Adocasts Plus Exclusive
Exclusive
Searching and Filtering Lessons
Video preview

Searching and Filtering Lessons

In this lesson, we'll take the filters we've created thus far and apply them to a new lessons search endpoint. We'll be able to search our lessons by name, status, access level, and module.

Video preview
Adocasts Plus Exclusive
Exclusive
Reusing Search Courses
Video preview

Making our Search Course Action Easily Reusable

In this lesson, we'll make our search course filters optional to increase the reusability of our action. We'll then switch our courses index route handler to use this action.

Video preview
Adocasts Plus Exclusive
Exclusive
Filtering by a Number or Array of Numbers
Video preview

Filtering by a Number or Array of Numbers

In this lesson, we'll implement our number filtering system in which we'll allow our search APIs to accept a single number or an array of numbers to filter the data by. To validate this, we'll use the union rule from VineJS.

Launch into Adocasts Plus

Get access to all the tools, tips, and real-world knowledge to build with confidence. Just choose the plan that fits you best.

  • Unlock all series, lessons, and assets
  • 2 weeks early access to new free lessons
  • Download lessons to watch offline anytime
  • Save time-stamped notes (coming soon)
  • Priority lesson support
  • Renewal reminders; cancel anytime

Monthly plan

Just getting started? Try Adocasts Plus on a month-by-month basis and unlock everything instantly with no strings attached.

$8

USD

per month

Annual plan

Ready to level up your Node game? Go annual and save big while accessing all premium content, all year long.

$80

USD

per year

Forever plan

All-in forever? One-time payment, lifetime access. Everything we make, now and in the future, is yours.

$285

USD

per lifetime