01. Introduction and demo
6m 22s
03. Setting up Vue and Tailwind
7m 55s
04. Scaffolding and navigation
7m 51s
10. Actually building the login page
8m 39s
11. User's files endpoint
8m 4s
12. Getting a list of user's files
12m 14s
14. Setting up an S3 bucket
5m 26s
15. Creating a signed upload request
8m 40s
16. Hooking up FilePond to signed uploads
12m 34s
18. Clearing out finished uploads
1m 52s
19. Create a file record after upload
8m 28s
20. Updating Vuex state with new uploads
2m 55s
22. Removing from S3 on deletion
2m 50s
24. Creating plans and a default free plan
9m 49s
25. Switching to a UserResource
6m 18s
26. Storage usage component
10m 53s
28. Incrementing usage when uploading
1m 47s
29. Decrementing usage when deleting
2m 27s
30. Custom usage validation rule
4m 13s
31. Handling upload validation
6m 26s
32. Switching to use a FormRequest
1m 31s
33. Client environment variables
2m 55s
35. Setting up the checkout and getting a card token
14m 52s
36. Creating a subscription
6m 39s
38. Toggling the navigation upgrade link
2m 40s
39. Showing the user’s current subscription
7m 3s
40. Listing plans to swap to
4m 34s
42. Filtering available plans to swap to
12m 14s
44. Downgrading to a free plan
2m 4s
45. Checking if user can swap
3m 30s
46. Creating a submit button component
13m 23s
47. Subscription endpoint validation
4m 25s
48. Setting up file sharing
5m 24s
49. Creating a sharable link
8m 11s
50. Authorizing sharable link creation
2m 5s
51. Generating a sharable link in the client
2m 27s
52. Automatically copying a sharable link to the clipboard
4m 4s
53. Creating the download page
4m 12s
54. Requesting the file to download
7m 42s
55. Hooking up the client
4m 10s
56. Clicking to download the file
1m 17s
58. Applying the snackbar to various actions
3m 47s
59. Hide swap plan from account area
1m 12s
60. Login form validation
3m 43s
61. Fixing middleware for sharable links
1m 3s
64. Hooking up account creation on the client
6m 33s
65. Optional password confirmation
2m 26s
66. Fixing unique email address validation
1m 28s