Video description
In this course, we will drive you from the very basic concepts to building, customizing, and deploying a complete Strapi application.
We will quickly introduce Strapi and set up our working environment at the beginning of this course. Once everything is in place, you will learn about content types, fields, relations, components, dynamic zones, and authorization and authentication systems. Then you will learn how to work with REST API and GraphQL API. Next, we will cover custom routes, controllers, services, policies, and middleware.
Later in the course, we will cover the Admin Panel and learn how to customize it. Then learn how to create a complete plugin that is ready for the Strapi marketplace. Finally, you will learn how to deploy our Strapi API.
The application we will be creating includes features built by extending the Strapi core through custom logic (routes, controllers, GraphQL resolvers, and so on). Furthermore, in this course, you will be developing a complete plugin (admin + server code) that is ready to be published on the Strapi Market. (And, in fact, you will find it there now!) The Strapi Plugin section is a course in the course, and it will give you the skills to propose Strapi plugins to customers, both through the newborn Strapi market (that has high growth potential) and directly.
By the end of this course, you will feel empowered as you will master a framework that dramatically speeds up time to market in developing production-ready backend applications, while not sacrificing extensibility to adapt it to endless use cases and business requirements!
What You Will Learn
- Create a complete Strapi application with custom features
- Master Strapi basics such as content types, relations, components, dynamic zones, and more
- Customize the Strapi REST API with custom routes, controllers, services, and so on
- Customize the Strapi GraphQL API with custom operations
- Learn Strapi plugins development by creating a full plugin
- Deploy Strapi with two different architectures and CI/CD pipeline
Audience
This course is perfect for anyone that wants to add Strapi to their developer toolbox, being it the most popular headless CMS in the market (and still growing!), which combines top-level out-of-the-box features with strong flexibility and extensibility.
One must have a basic knowledge of JavaScript and for the Strapi Plugins section, only the admin UI part, a basic knowledge of React will be useful.
About The Author
Artcoded Academy: Artcoded Academy is a place to learn full-stack JavaScript and Typescript skills. They feel coding is the best way to empower oneself as a creator, ultimately to bring ideas to life. They teach coding in a concrete, project-oriented way, by targeting a mono-language stack that a solo developer can manage as a one-man business.
Table of contents
- Chapter 1 : Welcome to the Course
- Chapter 2 : Introduction
-
Chapter 3 : Designing Strapi Content Types
- Content Types: An Introduction
- Data Fields
- Adding Fields to a Content Type
- Creating the Tag Collection Type
- Relation Fields
- Components
- Using the Content Manager
- Creating Service and Course Content Types
- Creating a Single Content Type
- Creating a Component for Posts Selection
- Creating a Dynamic Zone
- Creating the Homepage Content Entry
- Fixing the Homepage
- Creating a Global Configuration Type
- Creating Header and Footer Types
- SEO and Page Challenge
- Finishing the Blog Application
- Strapi Architecture: Generated Code Overview
- Chapter 4 : Permissions, Authentication, and Authorization
-
Chapter 5 : Working with REST API
- CRUD Operations on Collection Types
- CRUD Operations on Single Types
- API Parameters: An Introduction
- Sort the API Response
- Filter Your API Responses
- Populate Your API Responses with Relations and More
- Select Fields for Your API Responses
- Paginate Through Content Through API
- Deal with Draft Content Through API
- Chapter 6 : Working with GraphQL
-
Chapter 7 : Extending Strapi Core: Custom Controllers and More
- Customizing Strapi: What We Will Build
- Strapi Architecture: An Overview
- Request and Response
- Data Models and APIs
- Lifecycle Hooks
- Configuring Core Routes
- Creating Custom Routes
- Policies
- The Strapi Object
- Middleware
- Controllers: Creating Custom Controllers
- Controllers: Extending Core Controllers
- Controllers: Replacing Core Controllers
- Services
- Entity Service and Query Engine APIs
- Premium Posts: Introduction
- Premium Posts: Solution 1
- Premium Posts: Solution 2
- Premium Posts: Solution 3
- Premium Posts: The FindOne Controller
- Post Likes: Part 1
- Post Likes: Part 2
- Lifecycle Hooks: The Theory
- Lifecycle Hooks Exercise: Part 1 (Challenge)
- Lifecycle Hooks Exercise: Part 2 (Challenge Solution)
- Lifecycle Hooks Exercise: Part 3 (First Programmatic Hook)
- Lifecycle Hooks Exercise: Part 4 (Second Programmatic Hook)
- Lifecycle Hooks Exercise: Part 5 (Declarative Hook)
- Webhooks: An Overview
- Chapter 8 : Extending the GraphQL API
- Chapter 9 : Customizing the Strapi Admin
-
Chapter 10 : Strapi Plugin Development: Create a Plugin
- Introducing Our Strapi Plugin "GitHub Projects"
- Creating and Activating a Plugin
- Integrating the Third-Party GitHub API
- Plugin Route, Controller, and Service
- Fetching Data from the GitHub API
- Adapting the API Response
- Creating the Project Content Type
- Creating a Test Project
- Fetching Related Projects
- Dealing with Markdown Content
- Admin Panel: Plugin Icon and First Component
- The Strapi Design System
- Fetching Data from the Admin Panel
- Showing Data in a Table
- Setting Up the Action Icons
- Implementing the Checkbox Logic
- Applying the Proper Auth Policy to Our Route
- Generating a Single Project
- Providing UI Feedback to the Admin User
- Deleting a Project
- Showing a Confirmation Dialog Before Deleting
- Showing Buttons for Bulk Actions
- Creating Projects in Bulk
- Deleting Projects in Bulk
- Admin RBAC: Restricting Plugin Use to Specific Roles
- Admin RBAC: Restricting Routes to Specific Roles
- Fixing Error Handling
- Exposing Projects with Public Routes
- Plugin Localization
- Extract the Plugin as a Separate Package
- Publish the Plugin to NPM Registry
- Install the Plugin as a Dependency (And Publish to the Strapi Market)
-
Chapter 11 : Deploy Strapi in Production
- Introduction to Deployment
- Creating a GitHub Repo for Our Project
- Deployment Architectures: An Overview
- Environment Configurations
- Database Creation and Configuration
- Server Configuration
- Admin Configuration
- First Strapi Deployment
- Configure the Email Plugin
- Configure an External Upload Provider (Cloudinary)
- Configure a Custom Domain
- Deploying Admin as a Static Site: Configuration
- Deploying Admin as a Static Site: Creating the Site
- Make Absolute Admin URLs Work
- Infrastructure as Code: Make Your Strapi Deployment Reusable (Optional)
- Chapter 12 : What's Next (Bonus)
Product information
- Title: The Complete Strapi™ Course with Plugins and Deployment
- Author(s):
- Release date: January 2023
- Publisher(s): Packt Publishing
- ISBN: 9781837635078
You might also like
book
Spring Boot: Up and Running
With over 75 million downloads per month, Spring Boot is the most widely used Java framework …
video
Next.js from Development to Deployment: Build a Music Event Website
Next.js is a framework for building server-side rendered React websites as well as static websites. This …
video
Building Microservices with Spring Boot, Second Edition
7+ Hours of Video Instruction The term “microservices” has gained significant traction over the last few …
book
Full Stack Serverless
Cloud computing is typically associated with backend development and DevOps. But with the rise of serverless …