Free Course10 Modules · 68 Assignments

Grit Fullstack Course

Go from zero to building production-ready fullstack apps with Go + React. Learn the Grit framework by building 5 real-world applications and completing 68+ hands-on assignments.

No prior Go or backend experience needed. We start from the absolute basics and build up to deploying a complete SaaS CRM platform with authentication, file uploads, email, background jobs, AI integration, and more.

No spam. We'll only email you when the course is ready.

10
Modules
60+
Lessons
55+
Assignments
5
Projects Built

Course Curriculum

10 modules taking you from absolute beginner to deploying production apps.

Module 1·8 lessons

Foundations — Go Essentials

Learn the Go programming language from scratch. Variables, types, structs, functions, error handling, pointers, interfaces, and concurrency basics.

1
Installing Go & your editor setup
Set up Go, VS Code, and run your first program
2
Variables, types & constants
Build a tip calculator using variables and math
3
Control flow — if, switch, for
Write a number guessing game
4
Functions & multiple return values
Create a temperature converter with helper functions
5
Structs & methods
Model a contact card with struct methods
6
Slices, maps & iteration
Build an in-memory phonebook (add/search/delete)
7
Pointers & interfaces
Create a Shape interface with area/perimeter methods
8
Error handling & packages
Build a file reader that handles errors gracefully
Module 2·7 lessons

Foundations — React & Next.js

Learn React fundamentals and Next.js App Router. Components, hooks, state management, routing, data fetching, and TypeScript.

1
React components & JSX
Build a profile card component
2
Props, state & events (useState)
Create a counter with increment/decrement/reset
3
Lists, conditional rendering & forms
Build a todo list with add/delete/toggle
4
useEffect, data fetching & loading states
Fetch and display users from a public API
5
Next.js App Router & file-based routing
Create a multi-page portfolio site
6
TypeScript essentials for React
Convert a JS component to fully typed TypeScript
7
Tailwind CSS & shadcn/ui
Restyle the todo app with Tailwind + shadcn components
Module 3·5 lessons

Getting Started with Grit

Install Grit, scaffold your first project, and understand the monorepo architecture. Docker, configuration, and dev workflow.

1
Installing Grit CLI & Docker
Install Grit and verify with grit --version
2
Scaffolding your first project
Run grit new and explore every generated file
3
Project structure deep dive
Draw a diagram of the apps/api folder structure
4
Docker Compose & infrastructure
Start PostgreSQL, Redis, MinIO and connect via Studio
5
Environment configuration & dev workflow
Configure .env, run the API, web, and admin simultaneously
Module 4·6 lessons

Build App #1 — Contact Manager

Your first full-stack Grit app. Generate resources, explore the admin panel, GORM Studio, and auto-generated API docs.

Project: Contact Manager CRM
1
Generate a Group resource
Create Group with name, description, color fields
2
Generate a Contact resource with belongs_to
Create Contact with name, email, phone, notes, belongs_to:Group
3
Explore the admin panel
Add 10 groups and 20 contacts via the admin UI
4
Customize the admin resource definitions
Add badges, filters, and search to the contacts table
5
GORM Studio & API Documentation
Browse data in Studio and test 3 endpoints via /docs
6
Build a public contacts page in Next.js
Create a searchable contact directory on the web app
Module 5·8 lessons

Go Backend Deep Dive

Master Go backend patterns — models, handlers, services, middleware, authentication, JWT, RBAC, and custom business logic.

1
GORM models — tags, types & relationships
Create a Project model with has_many Tasks
2
Handlers — request parsing, validation & responses
Write a custom handler with query filters
3
Services — business logic separation
Move task assignment logic to a TaskService
4
Authentication — JWT tokens & bcrypt
Test the full auth flow: register, login, refresh, me
5
Middleware — auth, CORS, logging & custom
Write a custom middleware that logs request duration
6
RBAC — roles & protected routes
Add an EDITOR role and restrict project deletion to ADMIN
7
Pagination, sorting & search patterns
Implement multi-field search across 3 string columns
8
Error handling & validation best practices
Add custom validation for email uniqueness and date ranges
Module 6·5 lessons

Build App #2 — Task Manager

Build a project & task management app. Practice backend patterns, relationships, role-based access, and custom endpoints.

Project: Task Manager with RBAC
1
Scaffold and generate Project + Task resources
Generate both resources with proper relationships
2
Add custom endpoints — assign, complete, archive
Create 3 custom endpoints beyond standard CRUD
3
Implement role-based task assignment
Only ADMIN/EDITOR can assign, USER can only view own tasks
4
Build task stats endpoint with aggregations
Return counts by status, overdue tasks, and completion rate
5
Customize admin with badges, filters & widgets
Add status badges, priority filter, and task stats widget
Module 7·7 lessons

React Frontend & Admin Mastery

Master the frontend — React Query hooks, shared types, forms, DataTable, multi-step forms, dashboard widgets, and theming.

1
React Query hooks — queries & mutations
Create a custom hook with optimistic updates
2
Shared package — Zod schemas & TypeScript types
Add a new field and sync types across frontend and backend
3
DataTable — columns, sorting, filters & search
Build a custom column with a progress bar renderer
4
FormBuilder — all field types
Create a form with text, select, date, toggle, and richtext
5
Multi-step forms — modal-steps & page-steps
Build a 3-step customer onboarding form
6
Dashboard widgets — stats, charts & activity
Create a dashboard with 4 stat cards and 2 charts
7
Theme customization & style variants
Switch between default, modern, minimal, and glass styles
Module 8·6 lessons

Build App #3 — Customer CRM

Build a full customer relationship management app with companies, contacts, deals pipeline, activity log, and dashboard analytics.

Project: Customer CRM with Pipeline
1
Design the CRM data model
Create Company, Contact, Deal, and Activity resources
2
Build a deal pipeline with status workflow
Implement deal stages: Lead → Qualified → Proposal → Won/Lost
3
Add an activity timeline for contacts
Log calls, emails, meetings as activity entries
4
Build a CRM dashboard with analytics
Show revenue by stage, conversion rate, and top deals
5
Implement search across all CRM entities
Build a global search that queries companies, contacts, and deals
6
Add social login (Google & GitHub)
Configure OAuth and test the full social auth flow
Module 9·8 lessons

Batteries — Production Features

Add production-grade features: file uploads, email, background jobs, cron, caching, AI integration, security, and observability.

1
File storage — upload, resize & serve images
Add avatar upload to the user profile
2
Email — Resend + HTML templates
Send a welcome email on user registration
3
Background jobs — async processing with asynq
Process image thumbnails in a background worker
4
Cron scheduler — recurring tasks
Schedule a daily report email and weekly cleanup job
5
Redis caching — cache service & middleware
Cache the dashboard stats endpoint for 5 minutes
6
AI integration — Claude & OpenAI
Add an AI-powered 'summarize deal' button
7
Security — Sentinel WAF & rate limiting
Configure rate limits and test brute-force protection
8
Observability — Pulse tracing & metrics
Monitor API performance and identify slow endpoints
Module 10·8 lessons

Build App #4 & #5 — Capstone

Build two final apps: an inventory management system and a complete SaaS CRM platform. Deploy to production.

Project: Inventory System + SaaS CRM Platform
1
App #4 — Inventory: data model & resources
Create Product, Category, Warehouse, StockMovement resources
2
App #4 — Inventory: stock tracking & alerts
Build low-stock alerts and stock movement history
3
App #4 — Inventory: reports & export
Generate inventory reports with charts and CSV export
4
App #5 — SaaS CRM: multi-feature design
Plan the full data model for a production CRM
5
App #5 — SaaS CRM: pipeline, email & files
Combine deals, email templates, and file attachments
6
App #5 — SaaS CRM: AI assistant & automation
Add AI deal scoring and automated follow-up reminders
7
Deployment — Docker, Dokploy & production
Deploy your SaaS CRM to a VPS with SSL
8
Course wrap-up & next steps
Final review: refactor, optimize, and plan your own project

Join the waitlist

Be the first to know when the course launches. Enter your name and email below and we'll notify you on launch day.

No spam. We'll only email you when the course is ready.