Этот материал находится в платной подписке. Оформи премиум подписку и смотри или слушай Typelevel Rite of Passage, а также все другие курсы, прямо сейчас!
Премиум
  • Урок 1. 00:17:41
    Intro & Setup
  • Урок 2. 00:20:51
    Foundations: Cats
  • Урок 3. 00:38:47
    Foundations: Cats Effect
  • Урок 4. 00:26:23
    Foundations: Doobie
  • Урок 5. 00:31:20
    Foundations: Http4s
  • Урок 6. 00:37:02
    Backend Scaffolding
  • Урок 7. 00:14:01
    Jobs Endpoints
  • Урок 8. 00:21:45
    Jobs Endpoints Implementation
  • Урок 9. 00:18:14
    Logging & Debugging Infra
  • Урок 10. 00:24:41
    Jobs Core Module, aka "Algebra"
  • Урок 11. 00:17:34
    Running Jobs "Algebra"
  • Урок 12. 00:24:49
    A Full Jobs CRUD App
  • Урок 13. 00:13:47
    Adding Database Configuration
  • Урок 14. 00:24:49
    Testing: Jobs HTTP API
  • Урок 15. 00:29:42
    Testing: Jobs
  • Урок 16. 00:33:11
    HTTP Payload Validation
  • Урок 17. 00:27:12
    Filtering and Pagination
  • Урок 18. 00:11:43
    Finishing Tests
  • Урок 19. 00:44:02
    Users with TDD
  • Урок 20. 00:14:52
    Designing the Auth API
  • Урок 21. 00:27:50
    Auth TDD-Style
  • Урок 22. 00:26:36
    Auth Implementation
  • Урок 23. 00:12:12
    Auth HTTP API
  • Урок 24. 00:27:54
    Auth HTTP, TDD-Style
  • Урок 25. 00:28:27
    Auth HTTP Implementation
  • Урок 26. 00:15:44
    Auth HTTP Validation
  • Урок 27. 00:32:56
    Role-Based Access Control (RBAC)
  • Урок 28. 00:27:30
    Integrating the Auth Stack
  • Урок 29. 00:09:59
    Taking the Backend for a Spin
  • Урок 30. 00:24:39
    Protecting Jobs HTTP Endpoints
  • Урок 31. 00:28:12
    A Quick Refactor
  • Урок 32. 00:31:37
    Password Recovery: Tokens
  • Урок 33. 00:30:49
    Password Recovery: Sending Emails
  • Урок 34. 00:24:22
    Password Recovery: Finishing Up
  • Урок 35. 00:21:42
    Completing the Server
  • Урок 36. 00:22:51
    Inception: Adding ScalaJS
  • Урок 37. 00:26:16
    Foundations: Tyrian
  • Урок 38. 00:34:24
    Single-Page Application (SPA) Routing
  • Урок 39. 00:14:26
    Adding a Header with Links
  • Урок 40. 00:24:24
    Adding Pages
  • Урок 41. 00:26:45
    Signing Up
  • Урок 42. 00:32:43
    Signing Up: Interacting with the Backend
  • Урок 43. 00:16:14
    Logging In
  • Урок 44. 00:14:00
    User Sessions
  • Урок 45. 00:19:10
    Session Cookies
  • Урок 46. 00:25:51
    Logging Out
  • Урок 47. 00:13:33
    Invalidating User Sessions
  • Урок 48. 00:27:32
    The "Forgot Password" Flow
  • Урок 49. 00:32:53
    Resetting Password
  • Урок 50. 00:21:16
    Profile Page
  • Урок 51. 00:35:33
    Posting Jobs
  • Урок 52. 00:26:15
    Uploading Files
  • Урок 53. 00:31:45
    Showing the Job List
  • Урок 54. 00:24:18
    Implementing Backend Filters
  • Урок 55. 00:23:37
    Adding a Filter Panel
  • Урок 56. 00:34:36
    The Filter Panel UI
  • Урок 57. 00:36:15
    Displaying Individual Jobs and Rendering Markdown
  • Урок 58. 00:17:47
    Header
  • Урок 59. 00:20:33
    Job Filter Panel
  • Урок 60. 00:30:01
    Job List Page
  • Урок 61. 00:27:51
    Job Page
  • Урок 62. 00:26:16
    Auth Pages
  • Урок 63. 00:16:45
    Post Job Page
  • Урок 64. 00:15:49
    Stripe Integration Overview
  • Урок 65. 00:26:45
    Stripe Endpoints
  • Урок 66. 00:32:17
    Stripe Webhooks
  • Урок 67. 00:30:47
    Full-Stack Integration
  • Урок 68. 00:49:12
    Preparing the App for the World: Finishing Touches
  • Урок 69. 00:27:48
    Deployment, Part 1: Dockerized Server
  • Урок 70. 00:30:50
    Deployment, Part 2: Frontend
  • Урок 71. 00:16:36
    JWTs & Suboptimal Database Queries