WebDevPro #18: Exploring How Websites Talk, Open-Source libraries, React with Immer and React Libraries.
Hi,
Welcome to the _webdevpro! We start with community discussions on Exploring How Websites Talk, open-source libraries, React with Immer and React Libraries.
In our tutorial, we cover URL configuration from the book Web Development with Django - Second Edition to boost your Web development game. Don't miss our repository of ChatGPT resources - a weekly module covering trending ChatGPT tools. We also bring you the latest in Web Dev, with releases from Laravel, and Spring to help you keep up to date!
We have listened to the _webdevpro readership and we think this is something you have been searching for. If you liked this installment in our new series, fill in our survey below and win a free Packt credit. We're committed to bringing our readers exactly what they want, so help us make the right choices.
Take the Feedback Survey and Get Free Packt Credit!
Thanks,
Apurva Kadam
Editor-in-Chief, Packt
See your Risk and Compliance Status Without Sifting through Spreadsheets!
Eliminate manual control testing and see your compliance status at all times—giving you peace of mind and saving you time. With 450+ 5-star G2 reviews, you’ll see why 2,500+ customers choose Drata to automate compliance for SOC 2, ISO 27001, and more. Want to see automation in action? Book a demo and get 10% off and waived implementation fees.
Web Dev Community Insights
7 open-source libraries you must know in 2023 – This blog is curated by Github’s productivity community with a goal to boost developers project pace. With these open-source libraries developers can overcome productivity hurdles and reach the finish line faster. Check out these open-source libraries!
Exploring How Websites Talk - Have you ever wondered how websites and apps communicate with each other to fetch data or perform actions? Well, that's where HTTP requests and APIs come into play. In this guide, we'll demystify these tech terms and uncover the secrets of backend development—the behind-the-scenes magic that powers modern web experiences. Know more.
Building a blog with a liking feature using React, Hanko and Novu - In this tutorial, you'll learn how to build a blogging platform that lets you create and react to posts. You will start by building a login and registration with Hanko, build the entire blog along with creating posts, reacting to posts and adding in-app notification to every reaction with Novu. Learn more.
Time Travel in React with Immer - This tutorial will guide you step-by-step on how to integrate Immer into your React application and unlock the captivating potential of time travel debugging. You will cover essential concepts such as immutability, state transitions, and the magic of Immer's produce function. By the end you will learn how to set up your development environment for time travel debugging, manipulate and navigate state snapshots, and even replay past state sequences. Read now.
5 Not-So-Typical React Libraries for an Outstanding Project - It's easy to get swamped with the vast sea of React libraries. While the React ecosystem has many UI component libraries, sometimes we want to find something different. That's why we have gathered these five libraries. And the best part? You can combine these libraries and build a project out of them. Dive in!
Underrated React Hook – useSyncExternalStore - Discover a hidden powerhouse in the React ecosystem: the "useSyncExternalStore" hook. This article delves into its transformative potential, challenging traditional state management paradigms. By seamlessly integrating external data sources and enhancing cross-component communication, this hook offers an unconventional yet powerful approach. Learn more.
WebDev GitHub Resources
ChatGPT is still trending and the resources and tools to make the most out of this LLM are just getting better with every passing day! So starting today, WebDevPro will highlight ChatGPT resources through a week-on-week ChatGPT series. Here some browser extensions that you might use:
ChatGPT for Google - Display ChatGPT response alongside search engine results.
ChatGPT Prompt Genius - Discover, share, import, and use the best prompts for ChatGPT.
ChatGPT Box - Deep ChatGPT integrations in your browser.
ChatGPT Export and Share - Download your ChatGPT history to PNG, PDF or a sharable link.
Superpower ChatGPT - Enhance the ChatGPT web UI with search history, create folders, export all chats, pin messages, and access thousands of prompts.
chatgpt-google-summary-extension - Display ChatGPT summaries alongside Google search results, YouTube videos, etc.
FancyGPT - Save and share beautiful ChatGPT snippets as images, PDFs, and text files.
WritingMate.ai - Writing assistant.
Summarize - Summarize websites.
WebChatGPT - Enable web access in ChatGPT.
ChatGPT for Chrome & YouTube Summary - Access ChatGPT from the Chrome toolbar, see transcripts of YouTube videos, and summarize YouTube videos.
ChatGPT Enhancement Extension - Enhancements to the ChatGPT web UI.
ChassistantGPT - Chrome browser extension that embeds ChatGPT as a hands-free voice assistant.
Talk-to-ChatGPT - Talk with ChatGPT using your voice and listen to answers.
Tell us what you think!
We're always looking for ways to improve, and your feedback is invaluable to us. Would you take a few minutes to share your thoughts about the newsletter? Your responses will help us make the newsletter even better.
Provid feeedback through this survey, complete the questionnaire and receive a free credit in your Packt account!
Interested in Giving Us Feedback?
Web Development Tutorial
Django views cannot work on their own in a web application. When a web request is made to the application, Django’s URL configuration takes care of routing the request to the appropriate view function to process the request. A typical URL configuration in the urls.py file in Django looks like this:
from . import views
urlpatterns = [
path(‘url-path/’, views.my_view, name=’my-view’),
]Here, urlpatterns is the variable defining the list of URL paths, and 'url-path/' defines the path to match.
views.my_view is the view function to invoke when there is a URL match, and name='my-view' is the name of the view function used to refer to the view. There may be a situation wherein, elsewhere in the application, we want to get the URL of this view. We wouldn’t want to hardcode the value, as it would then have to be specified twice in the code base. Instead, we can access the URL by using the name of the view, as follows:
from django.urls import reverse
url = reverse('my-view')If needed, we can also use a regular expression in a URL path to match string patterns using re_path():
urlpatterns = [
re_path(r'^url-path/(?P<name>pattern)/$',
views.my_view, name='my-view')
]Here, name refers to the pattern name, which can be any Python regular expression pattern, and this needs to be matched before calling the defined view function. You can also pass parameters from the URL into the view itself, as shown in this example ...read more.
What's Happening in Web Dev?
Laravel
Take part in the State of Laravel Survey 2023 - Laravel is the most loved PHP framework of all time. It is used daily by thousands of developers and has an epic ecosystem with new trendsetting technologies invented constantly. Knowing the most popular technologies and choosing from them is difficult.
Spring
Spring Modulith 1.0 RC1 released - The release of Spring Modulith 1.0 RC is here. The first release candidate is likely to be the last before our GA release and contains quite a few new features and improvements.
Spring Tools 4.19.1 released - The company announced the 4.19.1 release of the Spring Tools 4 for Eclipse, Visual Studio Code, and Theia.
See you next week!



