I want to spend some time creating a great course on AdonisJS.
I personally DO NOT want to keep it super simple, like a todo app or a blog without any design. I understand that these tutorials does help understand the basics of the framework, but they do not do justice with what you can achieve by using AdonisJS.
Now, I have couple of ideas in mind. Lemme dump them here and use your feedback to make an informed decision.
Creating a little complex end to end application that deals with multiple things at a given point of time. For example: An application that has
-
Authentication
-
Authorisation
-
Use some of the advanced SQL stuff like sorting a collection based upon its popularity using an algorithm used by Hacker news. Formula ๐
-
Working with Lucid relationships
-
Sharing my workflow for user email management.
-
Adding support for teams in the app
-
Using Tailwind for design.
-
Using Hotwire for smoother page transitions & partial page refresh.
-
Deployment using Cleavr.
As good as it sounds, creating an end to end app has some downsides as well.
- We may not get in-depth on every topic. The app features will dictate the course content. If the app doesn't need file uploads, then we may never talk about them in the course.
- You have to watch the full course, as every screencast will be built on the previous one.
Another option is to go deep on every topic and create specific videos.
For example: Creating 3-4 videos dealing with the different aspects of file uploads like direct uploads, serving files to only authenticated users and so on.
The downside of this approach is, you will learn every topic in isolation and may still suffer to apply the knowledge on grand scheme of things.
I know both are important and I may do both one after the other. But, which one to start with?
Like you said at the end: I think both are different and really important, so this opinion assumes that you will end up doing both. This is going to be 100% my limited opinion but here I go.
If I was in your position: I think I would go for approach A first.
The main reasons are:
Also, as a disclaimer, I may be too biased because you got me basically salivating over Approach A, seeing how it is almost literally my favourite stack to work with with Adonis (Tailwind through AdonisMix + Hotwire + Stimulus or AlpineJS).
Hope this helps you think about it and come to a better decision!