Skip to main content

Let's Build A Forum with Laravel and TDD

19h 30m 20s
English
Paid

Course description

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

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 102 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Initial Database Setup With Seeding

All Course Lessons (102)

#Lesson TitleDurationAccess
1
Initial Database Setup With Seeding Demo
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

Unlock unlimited learning

Get instant access to all 101 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Comments

0 comments

Want to join the conversation?

Sign in to comment

Similar courses

React Js A-Z With Laravel - For Beginner to Advanced Level

React Js A-Z With Laravel - For Beginner to Advanced Level

Sources: udemy
This React Js A-Z With Laravel Course will help you to become a Full Stack Web Developer. React has rapidly become one of the most powerful tools for building W
68 hours 1 minute 33 seconds
Laravel with React JS - Build Twitter Like Real Time Web App

Laravel with React JS - Build Twitter Like Real Time Web App

Sources: udemy
Do you want to use React Js with Laravel to build powerful web applications? How about building a twitter like real time web app while learning Modern JavaScrip
4 hours 56 minutes 37 seconds
Laravel 8 PHP Framework A - Z Build Professional Ecommerce

Laravel 8 PHP Framework A - Z Build Professional Ecommerce

Sources: udemy
As i told you this complete project course which beings you to Beginner to Advance level by creating complete most advanced Ecommerce Project. You will able to understand how to...
71 hours 53 minutes 34 seconds
Building Finance Apps with Laravel

Building Finance Apps with Laravel

Sources: Martin Joo
Learn how to build reliable software that deals with payments, money, numbers, transactions, webhooks, dashboards, and exports.
Paginated Vue Components with Laravel

Paginated Vue Components with Laravel

Sources: Codecourse
Want flexible paginated Vue components that work with any data? Let's make this easy.
52 minutes 56 seconds