Send Newsletter Emails Using Resend BroadcastsHamed Bahram2024-08-27 | In this video, we'll learn to send broadcast marketing/newsletter emails efficiently using Resend.
ππΌ Resend β resend.comBuilding a waitlist system in NextJsHamed Bahram2025-02-25 | In this video, we'll build a waitlist using Clerk's Waitlist component in NextJs.
ππΌ AI engineering learning path β scrimba.com/?via=hamedbahramThe easiest way to manage state in NextJsHamed Bahram2025-02-04 | This video will look at managing the state in NextJs by lifting it to the URL using the `nuqs` package.
ππΌ Get in touch with me β hamedbahram.io/contactAdvanced search filtering in NextJs 15 ft Aurora ScharffHamed Bahram2025-01-28 | In this conversation, I'm joined by Aurora Scharff, a web developer from Crayon Consulting, discussing her journey into web development, her experiences with NextJs, and the evolution of its APIs. We delve into performance optimization, data fetching strategies, and the innovative use of URLs as state in applications. Aurora shares insights on implementing suspense and optimistic UI, advanced search parameters, and the benefits of using nuqs for managing state. The conversation concludes with a discussion on caching strategies in NextJs 15 and the future directions of the framework.
ππΌ Connect with Aurora β https://x.com/aurorascharff
ππΌ Link to Aurora's blog post β https://aurorascharff.no/posts/managing-advanced-search-param-filtering-next-app-router/
Chapters 00:00 Introduction to Aurora Scharff and Web Development Journey 02:53 Transitioning to Next.js and App Router Challenges 05:51 Exploring Next.js: Choosing the Right Tech Stack 09:00 Current State of Next.js and Future Changes 11:55 Performance Optimization in Next.js 14:48 Data Fetching Strategies and Suspense in Next.js 18:06 Managing Search Parameters and Client-Side Interactivity 21:04 Caching Strategies and React 19 API 23:52 User Experience Considerations with Suspense 26:56 Using the New use API for Client Components 28:53 Introduction to API for Internationalization 30:02 Advanced Search Parameters in App Router 31:20 Using URL as State for User Feedback 33:01 Optimizing User Interactivity with Transitions 36:01 Implementing Optimistic UI for Better UX 40:52 Managing Search and Filter States 47:00 Exploring nuqs for Search Parameter Management 53:11 Next.js 15 Changes and Caching StrategiesOptimizing your NextJs app with after()Hamed Bahram2025-01-21 | In this video, we'll look at the after() function in NextJs and how it can help us run tasks without blocking the response.From Idea to Execution: Building AI Tools ft @HassanElMghariHamed Bahram2025-01-14 | In this conversation, Hamed and Hassan discuss the rapid evolution of AI app development, sharing insights from Hassan's journey into AI, the challenges of monetization, and the importance of prompt engineering. They explore various applications, including real estate and the innovative Llama Coder project, while emphasizing the significance of building and iterating on AI tools. The discussion also touches on the future of AI, particularly the potential of agents and function calling in enhancing app functionalities.
00:00 Introduction to AI App Development 02:51 Hassan's Journey into AI 05:35 The Success of Room GPT 08:14 Monetization Challenges and Strategies 11:06 Exploring New AI Projects 13:50 Building AI Applications: The Process 16:22 Together AI: An Overview 18:57 The Future of AI and Its Applications 27:30 The Duality of AI: Potential vs. Misuse 28:40 Introducing Lama Coder: Building AI Apps 32:05 Interactive Coding: A Demo of Lama Coder 37:57 The Art of Prompt Engineering 42:38 Exploring AI Models: Llama and Beyond 47:52 Local vs. Cloud: The AI Hosting Debate 51:09 Future Innovations: AI Agents and Function CallingBuild shadcn forms fasterHamed Bahram2025-01-07 | In this video, we're going to look at a tool that helps building forms with shadcn, react-hook-forms, and zod much faster.
ππΌ Shadcn form builder β https://shadcn-form-build.vercel.app
ππΌ Get in touch with me β hamedbahram.io/contactUnlocking the Power of AI with Vercel SDK ft Nico AlbaneseHamed Bahram2024-12-24 | In this conversation, we'll focus on the Vercel AI SDK, the fundamentals of language models, and the importance of effective prompting techniques in building applications and chatbots, with practical examples emphasizing the significance of structured outputs and schemas in AI applications.
Chapters 00:00 Introduction to AI and Versel AI SDK 01:13 Nico's Journey into AI 10:23 Understanding AI and Language Models 27:26 Exploring the AI SDK 34:38 Introduction to AI SDK Project Setup 39:04 Understanding Classification in AI Models 46:26 Leveraging Zod for Structured Data Generation 54:51 Expanding Functionality with Urgency and Language Detection 01:03:40 Building a Chatbot with AI SDKBuild a Simple API with Cloudflare WorkersHamed Bahram2024-12-17 | In this video, we'll learn about Cloudflare Workers, a serverless computing provider that allows you to build serverless applications deployed instantly across the globe.
Chapters: 0:00 Intro 2:45 Serverless computing 4:30 Cloudflare workers 8:15 Setup 14:00 Cloudflare CLI 22:24 Environment variables 26:50 RecapBuilding robust forms in NextJs 15Hamed Bahram2024-12-10 | In this video, we'll look at how to build robust forms in NextJs 15 using server actions, the new `useActionState,` Zod schema validation, and Arcjet for rate limiting and protection against spam and common attacks.
Chapters: 0:00 Intro 2:40 Project setup 6:16 Add useActionState 20:30 Add Zod validation 31:25 Add spam protection 36:45 RecapHow to use Clerk auth in NextJs 15Hamed Bahram2024-12-03 | In this video, we'll set up Clerk v6 in a new NextJs 15 app and walk through the breaking API changes when migrating from an older version.
Chapters 0:00 Intro 1:30 Breaking changes 7:25 Setting up a new app 14:00 Migrating to v6 16:00 Default rendering strategy 21:15 RecapFrom sales to software: Shaundais journey to NetflixHamed Bahram2024-11-26 | In this conversation, Hamed interviews Shaundai Person, a senior software engineer at Netflix, about her journey into tech from a sales background. Shaundai shares insights on her unstructured workday at Netflix, the importance of curiosity and persistence in career growth, and how her sales experience has shaped her engineering skills. She discusses her transition into tech, the significance of networking, and her plans for content creation, including a TypeScript course aimed at enterprise users.
ππΌ Connect with Shaundai β https://x.com/shaundai
ππΌ Connect with me β https://x.com/HaamedBahram
Chapters 00:00 Introduction to Shaundai Person and Her Journey 05:27 Curiosity and Growth in Tech 11:04 The Importance of Soft Skills in Tech 16:46 Learning to Code: The Self-Taught Journey 22:03 Conclusion and Reflections on Career Paths 27:50 Transitioning from Sales to Engineering 40:07 Future Aspirations: Content Creation and CoursesSecuring your application using ArcjetHamed Bahram2024-11-19 | In this video, we'll use Arcjet to secure our application by implementing bot protection, rate limiting, email validation, and more in just a few lines of code.
ππΌ Let's connect β hamedbahram.io/contactThe easiest way to build a sidebar menu in NextJs 15Hamed Bahram2024-11-12 | In this video, we'll use the new sidebar component in shadcn/ui to build a dashboard in NextJs 15.
Chapters 0:00 Intro 1:00 Project setup 5:00 Site layout 15:00 Dashboard layout 27:20 Sidebar components 47:50 Styling 50:50 RecapUsing shadcn/ui with NextJs 15 and React 19Hamed Bahram2024-11-05 | In this video, we'll look at setting up shadcn/ui in NextJs 15 and React 19 and how to deal with peer dependencies that don't yet support React 19.
ππΌ Let's connect β hamedbahram.io/contactIntroduction to NextJs 15Hamed Bahram2024-10-29 | This video will explore the new APIs and breaking changes in NextJs15, caching, and what's next in partial prerendering.
ππΌ The ultimate NextJs course β hamedbahram.io/coursesThe most popular open-source platform for commerceHamed Bahram2024-10-23 | In this video, we'll build an ecommerce backend with a NextJs storefront using Medusa, an open-source commerce platform with a built-in framework for customization.
Chapters: 00:00:00 Intro 00:07:30 Project setup 00:12:40 NextJs storefront 00:18:30 Medusa backend 00:22:00 Basics: Medusa container 00:25:15 Basics: Modules 00:37:20 Basics: API routes 00:39:20 Basics: Commerce modules 00:40:54 Basics: Loaders 00:43:40 Basics: Events and subscribers 00:49:45 Basics: Scheduled jobs 00:53:15 Basics: Workflows 01:05:00 Basics: Admin customization 01:09:30 RecapProduct-Led Growth ft Steven Tey from DubHamed Bahram2024-10-22 | In this conversation, Steven Tey shares his journey from being a developer advocate at Vercel to founding Dub, a link management platform. He discusses his early entrepreneurial experiences, the importance of design in product development, and the evolution of Dub from a side project to a successful startup. Steven emphasizes the significance of product-led growth, the tech stack behind Dub, and the value of open source in fostering community and security. He also reflects on the challenges of transitioning from a developer to a founder and shares insights on the role of AI in development and customer support.
Chapters 00:00 Introduction to Steven Tey and Dub 02:03 Early Entrepreneurial Journey and Background 08:32 Transition from Vercel to Dub 15:14 The Birth of Dub and Its Evolution 20:00 Understanding Dub's Features and Offerings 24:58 The Importance of Product-Led Growth 31:32 Tech Stack Behind Dub 35:31 The Value of Open Source 43:06 Life as a Developer vs. Founder 47:55 AI in Customer Support and Development 50:30 The Future of AI in DevelopmentHow to use Vercel blob storage in NextJsHamed Bahram2024-10-15 | Vercel Blob is a scalable and cost-effective object storage service for static assets such as images, videos, audio files, and more. In this video, we'll add image upload functionality to our notion-style text editor.
ππΌ Vercel blob storage β vercel.com/docs/storage/vercel-blobVisual website builder for NextJs, shadcn/ui, and TailwindHamed Bahram2024-10-08 | In this video, we will build an ecommerce site using Reweb, a visual builder for NextJs, Tailwind, and shadcn/ui.
ππΌ Courses β hamedbahram.io/coursesMedium Clone with NextJs, Convex, and ClerkHamed Bahram2024-10-01 | In this video, we'll build a Medium clone using NextJs, Convex, and Clerk. We'll use the Convex real-time database to get immediate updates and file storage to store our images conveniently. We'll integrate Clerk with Convex to access the auth context in our Convex functions. We'll also use a webhook to store user data in our Convex database.
Chapters: 00:00:00 Intro 00:05:00 Setting up Clerk 00:15:30 Setting up Convex 00:28:10 Adding Clerk auth to Convex 00:35:25 Storing user data in Convex 00:43:30 Defining users schema and functions 00:59:00 Creating an HTTP endpoint 01:06:00 Defining posts schema and the create post form 01:30:00 Uploading a file to Convex storage 01:37:50 Defining posts query functions 01:49:50 Creating dynamic slug page 01:53:50 Using convex in server components 01:59:34 Building the home page 02:11:00 RecapBuild a realtime messaging app in 60 min | NextJS, Clerk & StreamHamed Bahram2024-09-24 | We will build a realtime messaging app like WhatsApp using NextJs, shadcn/ui, Clerk for authentication, and Stream for messaging APIs and SDKs to build in-app chat.
Chapters 00:00:00 Intro 00:02:18 Project setup 00:05:00 Clerk setup 00:11:10 Stream setup 00:23:30 Generating JWT tokens 00:30:00 Custom chat layout 00:33:30 Initial chat components 00:48:15 Add dark theme 00:50:15 Customizing UI component 01:04:00 Creating new channels 01:28:30 Add sidebar nav 01:31:40 RecapUser onboarding with NextJs, Neon, Clerk, and UpstashHamed Bahram2024-09-19 | Learn how to build a community platform with a focus on user onboarding using NextJs, Prisma, Neon, Clerk, and Upstash workflows.
Chapters: 00:00:00 Intro 00:01:20 Project setup 00:04:25 Adding Prisma & Neon 00:28:30 Fetching data 00:37:20 Dynamic slug page 00:41:40 Adding Clerk authentication 00:56:30 Clerk webhooks 01:08:00 Add onboarding flow 01:37:50 Adding Upstash workflow 02:02:28 Recap8 ways to handle state in React ft Cory HouseHamed Bahram2024-09-10 | In this video, we'll explore the React state, all the different ways you can manage it, and when to consider eachβfeaturing Cory House.
ππΌ Let's connect β hamedbahram.io/contactuseActionState in React 19 ft Sam SelikoffHamed Bahram2024-08-20 | In this video, we'll talk about actions, transitions, and the new useActionState hook in React 19 with Sam Selikoff from BuildUI.
ππΌ Let's talk β hamedbahram.io/contactBuild a Video Course Platform Using Mux, Clerk, Neon, Prisma, and NextJsHamed Bahram2024-08-08 | In this video, we will create a video course platform using Mux for video upload and streaming, Clerk for authentication, Neon as our serverless Postgres database, and Prisma as our type-safe ORM. We will be using Next.js and then deploying it to Vercel.
Chapters 0:00 Intro 3:00 Project setup 5:30 Server action 11:36 RecapNotion-style Rich Text Editor in NextJsHamed Bahram2024-07-27 | In this video, we'll look at Novel, a Notion-style WYSIWYG editor with AI-powered autocompletion, Prisma, and Neon to build a blogging application.
ππΌ Work with me β hamedbahram.io/contactReact Charts in Shadcn/uiHamed Bahram2024-07-20 | In this video, we'll look at charts in shadcn/ui built on top of the amazing Recharts library.
Chapters 0:00 Intro 3:00 Adding charts 9:40 Adding grid 10:30 Adding axis 11:15 Adding tooltip 12:20 Adding legend 13:00 Chart config 14:00 Theming 18:10 Accessibility 18:30 Example codes 19:25 RecapPragmatic educational content ft Alex SidorenkoHamed Bahram2024-07-16 | Join me in a friendly conversation with Alex Sidorenko about creating educational NextJs content in different forms and platforms.
ππΌ Alex Sidorenko β https://x.com/asidorenko_We did it folks!Hamed Bahram2024-07-13 | Reflecting back on our journey, 121 videos and over two years later, we've passed 100K subscribers.
ππΌ The Ultimate NextJs Course (75% off) β hamedbahram.io/coursesRate Limiting in NextJs with Middleware, Vercel KV Storage & UpstashHamed Bahram2024-07-06 | In this video, we'll look at rate limiting your NextJs application using edge middleware functions, Vercel KV (Kay value storage), and the Upstash rate limiting package.
ππΌ Work with me β hamedbahram.io/hireCaching in NextJs ft Delba Oliveira from VercelHamed Bahram2024-07-02 | In this video, we'll discuss caching in NextJs with Delba Oliveira, developer advocate at Vercel, and the beautiful mind behind NextJs documentation.
ππΌ Work with me β hamedbahram.io/hireNeon: Serverless Postgres DatabaseHamed Bahram2024-06-29 | In this video, we'll build an expense tracker using Prisma, NextJs 15 RC, and Neon, a serverless Postgres database in the cloud that scales up and down automatically based on your application's workload.
Chapters 0:00 Intro 0:30 Neon features 4:30 Setting up NextJs 15 6:00 Adding Prisma 18:00 Querying our data 20:00 Adding server action 25:40 Neon branches 27:20 RecapHow to build custom UIs on top of Clerks APIsHamed Bahram2024-06-25 | Introducing Clerk Elements, a new set of unstyled components that make it easy to build custom UIs on top of Clerk's API without having to manage the underlying logic.
Chapters 0:00 Intro 1:00 Project setup 1:46 Adding React resizable 7:30 Shadcn abstraction 8:44 RecapIn conversation with Colby Fayock from CloudinaryHamed Bahram2024-06-18 | Join me in a conversation with Colby Fayock from Cloudinary, where we will dive into his journey as a web developer, content creator, and now developer advocate at Cloudinary.
ππΌ Letβs talk about your project β hamedbahram.io/contactServerless Postgres ft Mahmoud from NeonHamed Bahram2024-06-15 | Join me for a deep dive into Neon, a serverless Postgres database, and Prisma, a type-safe ORM, with Mahmoud, Developer advocate at @neondatabase.
ππΌ Letβs talk about your project β hamedbahram.io/contactSchema validation using ValibotHamed Bahram2024-06-11 | This video will teach us about Valibot, a type-safe schema validation tool.
Chapters 0:00 Intro 1:00 Installation 7:30 Implementation 16:10 Client side validation 17:50 RecapThe Easiest Way to Add Charts in NextJsHamed Bahram2024-06-08 | This video will look at adding charts in NextJs using Tremor.
ππΌ Work with me β hamedbahram.io/hireBlurred placeholder for dynamic images in NextJsHamed Bahram2024-06-04 | In this video, weβll look at generating `blurDataURL` to use as a placeholder when lazy loading dynamic images in NextJs using the plaiceholder package.
ππΌ Work with me β hamedbahram.io/hireThe New React CompilerHamed Bahram2024-06-01 | In this video, we'll look at the new open-sourced React compiler released in React 19 RC. We'll learn what it does and how to use it in NextJs 15 RC.
Chapters 0:00 Intro 0:30 What is React compiler? 3:35 What does it do? 7:30 Preflight check 8:23 Getting started 10:40 Code example 18:00 Troubleshooting 19:40 Caveats 21:10 RecapReact Conf 2024 Recap | React 19 RC ReleaseHamed Bahram2024-05-28 | Reflecting on React conf 2024, this video will review the React 19 RC release and the new features coming to stability.
Chapters 0:00 Intro 4:50 Actions & transitions 12:05 The use API 14:26 Server components 15:10 Server actions 16:40 ref as a prop 17:20 Context provider 17:50 More updates 18:20 RecapWhats New in NextJs 15Hamed Bahram2024-05-25 | In this video, we'll review the latest features in NextJs 15 Release Candidate (RC) before the upcoming stable release.
ππΌ Work with me β hamedbahram.io/contactSync Clerk Data to Your Database Using WebhooksHamed Bahram2024-05-18 | In this video, we'll examine how to sync user data from Clerk to our database using webhooks. We will use Prisma as our ORM to connect to Mongodb for end-to-end type safety.
Chapters 0:00 Intro 1:30 Project setup 3:45 Clerk webhooks 7:40 Using ngrok 9:30 Create an endpoint in Clerk 13:50 Add a route handler in NextJs 17:00 Setting up Prisma 21:00 Testing our webhook 24:38 RecapProject Structure and File Conventions in NextJs 14Hamed Bahram2024-05-14 | In this video, we'll review the project structure and file conventions in the App router in NextJs 14.