Let's Build A Forum with Laravel and TDD

19h 30m 20s
English
Paid
April 15, 2024

A forum is a deceptively complex thing. Sure, it's made up of threads and replies, but what else might exist as part of a forum? What about profiles, or thread subscriptions, or filtering, or real-time notifications? As it turns out, a forum is the perfect project to stretch your programming muscles. In this series, we'll work together to build one with tests from A to Z.


Watch Online Let's Build A Forum with Laravel and TDD

Join premium to watch
Go to premium
# Title Duration
1 Initial Database Setup With Seeding 07:59
2 Test-Driving Threads 09:27
3 A Thread Can Have Replies 09:10
4 A User May Respond to Threads 17:40
5 The Reply Form 05:15
6 A User May Publish Threads 06:13
7 Let's Make Some Testing Helpers 05:44
8 The Exception Handling Conundrum 07:55
9 A Thread Should Be Assigned a Channel 14:12
10 How to Test Validation Errors 10:41
11 Users Can Filter Threads By Channel 13:26
12 Validation Errors and Old Data 08:24
13 Extracting to View Composers 03:00
14 A User Can Filter All Threads By Username 07:37
15 A Lesson in Refactoring 18:48
16 Meta Details and Pagination 09:20
17 A User Can Filter Threads By Popularity 11:51
18 A User Can Favorite Replies 15:47
19 The Favorite Button 07:37
20 From 56 Queries Down to 2 07:07
21 Global Scopes and Further Query Reduction 08:29
22 A User Has a Profile 12:32
23 A User Can Delete Their Threads 14:07
24 Authorization With Policies 10:29
25 How to Construct an Activity Feed with TDD 16:38
26 How to Construct An Activity Feed with TDD: Part 2 16:22
27 Extracting Controller Queries to the Model 07:40
28 The Activity Deletion Bug 05:11
29 Flash Messaging With Vue 14:00
30 A User's Activity Feed Should Include Favorited Replies 06:06
31 Authorized Users Can Delete Replies 07:59
32 A Vue Reply Component 13:52
33 Ajaxifying the Delete Button 04:22
34 A Vue Favorite Component 16:28
35 Squashing Bugs 08:32
36 A More Data-centric Approach 21:59
37 A New Reply Component 11:44
38 Laravel and Vue Pagination 31:02
39 A User Can Filter By Unanswered Threads 12:53
40 Thread Subscriptions: Part 1 10:53
41 Thread Subscriptions: Part 2 06:17
42 Thread Subscriptions: Part 3 15:13
43 Thread Subscriptions: Part 4 25:30
44 Test Refactoring 06:16
45 Thread Subscriptions: Part 5 13:22
46 Refactoring for the Better or Worse? 10:25
47 Notification Fakes in a Nutshell 05:21
48 This Thread Has Been Updated Since You Last Read It 15:55
49 Spam Detection 11:09
50 Graduating Inspection Methods to Classes 08:52
51 Spam Detection At All Ports 06:57
52 Handling Server Exceptions with JavaScript 10:17
53 Refactoring to Custom Validation 07:21
54 A User May Not Reply More Than Once Per Minute 15:11
55 Refactoring to Form Requests 12:04
56 Mentioned Users Notifications: Part 1 09:29
57 Mentioned Users Notifications: Part 2 12:14
58 Don't Forget to Scan Your Files 08:02
59 Wrap Usernames Within Anchor Tags 07:35
60 Instant Username Autocompletion 13:20
61 Instant Username Autocompletion: Part 2 13:34
62 Basic View Tweaks 07:49
63 Testing Avatar Uploads 13:50
64 Testing Avatar Uploads: Part 2 14:05
65 AJAX Image Uploads 28:04
66 Trending Threads With Redis 14:50
67 Isolating Knowledge 12:15
68 Thread Views: Design #1 - Trait 09:11
69 Thread Views: Design #2 - Extract Class 08:24
70 Thread Views: Design #3 - KISS 07:51
71 Users Must Confirm Their Email Address: #1 - Protection 09:47
72 Users Must Confirm Their Email Address: #2 - Confirmation 23:07
73 Users Must Confirm Their Email Address: #3 - Cleanup 15:17
74 Email Confirmation Loose Ends 08:03
75 A Thread Should Have a Unique Slug: Part 1 07:26
76 A Thread Should Have a Unique Slug: Part 2 11:45
77 We Need a Regression Test 13:29
78 Mark the Best Reply: Part 1 14:18
79 Mark the Best Reply: Part 2 07:58
80 Refactoring Authorization 06:08
81 Remembering a Best Reply 10:49
82 Confusing Errors and Solutions 11:08
83 Thread Authorization 06:40
84 An Administrator May Lock Any Thread 08:00
85 An Administrator May Lock Any Thread: Part 2 16:02
86 An Administrator May Lock Any Thread: Part 3 11:16
87 An Administrator May Lock Any Thread: Part 4 11:59
88 From Laravel 5.4 to Laravel 5.5 09:31
89 Recaptcha 09:33
90 Recaptcha Refactoring 12:51
91 A Thread Can Be Updated 13:34
92 A Thread Can Be Updated: Part 2 12:44
93 A Thread Can Be Updated: Part 3 15:22
94 First Class Search: Scout Review 09:07
95 First Class Search: Implementation 18:10
96 First Class Search: Faceting and Ranking 05:01
97 First Class Search: Instant Results 11:51
98 First Class Search: Forum Integration 11:02
99 WYSIWYG 15:29
100 WYSIWYG: Part 2 12:12
101 Sanitizing is a Must 19:29
102 Onward 01:58

Similar courses to Let's Build A Forum with Laravel and TDD

Laravel Backends for Vue.js 3

Laravel Backends for Vue.js 3vueschool.io

Duration 3 hours 44 minutes
Let's Build a Go version of Laravel: Part Two

Let's Build a Go version of Laravel: Part Twoudemy

Duration 8 hours 5 minutes 42 seconds
RESTful API with Laravel: Build a real API with Laravel

RESTful API with Laravel: Build a real API with Laraveludemy

Duration 14 hours 30 minutes 19 seconds
Testing Laravel with PHPUnit

Testing Laravel with PHPUnitspatie.be

Duration 2 hours 42 minutes 59 seconds
Vue.js + Laravel: CRUD with SPA

Vue.js + Laravel: CRUD with SPAlaraveldaily.com

Duration 1 hour 50 minutes 29 seconds
Roles and permissions in Laravel

Roles and permissions in LaravelCodecourse

Duration 1 hour 7 minutes 43 seconds