Adocasts provides education lessons, screencasts, and livestreams on AdonisJS, NodeJS, JavaScript, and more. We have a vast library of free lessons and resources that expands weekly to help get you up and running with AdonisJS.
Get even more by joining Adocasts Plus
📚 Ready to learn? Check out adocasts.com
🎉 New lessons every week!
Some portions of the Adocasts site rely on production data or external APIs & SDKs for information. The site will still function fine for you locally, but these sections may not render unless you set up an account specifically for them.
- Trending Lessons: Relies on our Plausible API connection.
- Billing & Plans: Relies on our Stripe connection. You can create your own Stripe account with test data to get this working.
- Content Schedule: Relies on our Notion API connection.
- Social Authentication: Relies on Google and GitHub services.
- PostgreSQL — We use PostgreSQL as our database driver so you'll either want it installed on your machine or a service that provides it.
- SMTP Provider — Locally, we like to use MailTrap
- Node v20+ — Recommended
- Clone the repository
git clone https://github.com/adocasts/adocasts.git
- Install NPM packages
npm i
- Duplicate
.env.example
and rename.env
- Fill out the
.env
variables
We provide a StarterSeed
that will populate your database with faker data to populate pages on the Adocasts site.
I haven't tested this yet since our migration from AdonisJS 5 to 6. If you run into any problems, feel free to open an issue.
- Migrate your database
node ace migration:run
- (Optional) If you'd like to start fresh (without faker data), open our
StarterSeed
atdatabase/seeders/StarterSeed.ts
and comment out theseedUsersAndContent()
call within the run method.
public async run() {
const trx = await Database.transaction()
try {
await this.seedRoles(trx)
if (!Application.inTest) {
// await this.seedUsersAndContent(trx)
}
await trx.commit()
} catch (error) {
await trx.rollback()
console.log({ error })
}
}
- Seed our faker data
node ace db:seed