Build a Chrome Extension With React & Webpack

  Рет қаралды 43,452

Codify Tools

Codify Tools

Күн бұрын

Learn how to build your own chrome extension using react, nodejs and webpack. You will go from the very basics until the point where you will create a functional chrome extension.
0:00 - Intro
1:23 - Chrome Extension Files Setup
3:20 - React Setup
4:58 - Webpack Setup
6:31 - Webpack Entry
7:06 - Webpack Output
8:57 - Webpack Loaders (Babel Setup)
11:33 - Webpack Plugins
13:54 - Extension Setup in Browser
15:39 - Webpack Production & Development Setup
____________________________
Follow Me
Website - www.codifytools.com
Twitter - / juanpmd
Courses
ML Model Deployment with Flask, React & NodeJS - www.udemy.com/course/machine-...

Пікірлер: 96
@sanujatharinda6525
@sanujatharinda6525 2 жыл бұрын
You explained 2 hours worth of content in just 17 minutes. Thank you very much...
@Jaayy
@Jaayy Жыл бұрын
Criminally underrated. If you have the time you need to be the savior of coding tutorials on youtube
@dumitru12cosmin
@dumitru12cosmin 2 жыл бұрын
I loved how clear you explained all those concepts I spent hours trying to understand. Great job!
@TahaCrafter
@TahaCrafter 2 жыл бұрын
Thank you so much, very clear explanation! I can't believe you only have 80 subscribers, youtube algorithms are not fair, it should rank your videos much higher to get the number of subscribers that you actually deserve.
@lookwhoneedsahobbie
@lookwhoneedsahobbie Жыл бұрын
Amazing tutorial. Answered all my questions. I especially love automating 'npm run build' on changes at the end. Thank you!!
@shahriarparvezshuvo4760
@shahriarparvezshuvo4760 2 жыл бұрын
Right on to the point. Please do more video like this. Your explanation is very clear. 👌
@sunkanmiolaleye1799
@sunkanmiolaleye1799 2 жыл бұрын
One the best tutorials I have seen. Thanks for sharing.
@nevenpanchev441
@nevenpanchev441 2 жыл бұрын
Amazing tutorial from start to finish :) Well done!
@talatkuyuk6556
@talatkuyuk6556 2 жыл бұрын
Hi, you are awesome. You give very clear explanations. Hope you continue to make youtube tutorials about nodejs-react-chrome extension including script injection, service workers etc. Thank you very much again, I've subscribed, liked and get always notified.
@CemKaraca
@CemKaraca 2 жыл бұрын
Loved how you explain step by step, thank you!
@uppadaavinash3338
@uppadaavinash3338 Жыл бұрын
Awesome video, cleared all my doubts on react chrome extention. Great job!
@ginebro1930
@ginebro1930 5 ай бұрын
The best video out there about this and the channel has only 1 video, insane.
@robinbeaudru6892
@robinbeaudru6892 2 жыл бұрын
Underrated video, thank you so much.
@hubertryan
@hubertryan 2 жыл бұрын
Thank you so much! I wasn't wanting it to end!!!!! thank you!!!!!!!!
@proyas21
@proyas21 2 жыл бұрын
This video is the best among all other videos I have watched on this toping in KZbin. Please keep making these awesome videos and please please please continue this topic. 👏👏
@proyas21
@proyas21 2 жыл бұрын
@@codifytools thank you so much you are the best. 😄😄😄
@321123580
@321123580 7 ай бұрын
Very clear and helpful info, thank you a lot)
@dani5318
@dani5318 7 ай бұрын
this video was incredibly well made, thank you for this :D
@mollu7522
@mollu7522 7 ай бұрын
Your tutorial helped a lot! Thank you for your videos!
@anujchoudhary859
@anujchoudhary859 2 жыл бұрын
Thanks man. This was really very helpful video.
@flavioherrera3792
@flavioherrera3792 Жыл бұрын
this video is insane, extremely helpful, thankyou
@MrLmao9
@MrLmao9 Жыл бұрын
Perfectly explained, thanks!
@BryantCobarrubias
@BryantCobarrubias 2 жыл бұрын
Great video. One thing tripped me up while setting up Webpack, at 12:20 you glossed over adding the line "const HtmlWebpackPlugin = require('html-webpack-plugin');" to the top of webpack.config.js. It took me a quick trip to stackoverflow to figure it out. :)
@ironsand
@ironsand Жыл бұрын
REALLY outstanding. Thanks!
@rayfront7390
@rayfront7390 2 жыл бұрын
this is very helpful, thank you
@AntonKlimkovich
@AntonKlimkovich 2 жыл бұрын
Thanks a lot! Great content.
@bharatkumar-be9ki
@bharatkumar-be9ki 10 ай бұрын
Awesome explaination, really helpful.
@user-ng1gk2up6n
@user-ng1gk2up6n 2 жыл бұрын
It's a great video It's very helpfull, i am hoping more video about this topic
@clics-sk9fq
@clics-sk9fq 10 ай бұрын
thanks a lot! very helpful
@simpleneeraj
@simpleneeraj 2 жыл бұрын
Super and awesome 👌 explains, Because I searched on Google lot of but nothing find helpful. Keep it up making playlist of chrome extension tutorials. And......... ❤❤❤❤❤❤❤❤
@almogidisis274
@almogidisis274 2 жыл бұрын
Wow. I really never wanted it to end, well done!
@wadhahag8053
@wadhahag8053 2 жыл бұрын
thank you for your time and consideration great video
@mrsam683
@mrsam683 Жыл бұрын
Thanks man, really helpful.
@mrsam683
@mrsam683 Жыл бұрын
@@codifytools I have a question though regarding what you say at 6:40. I thought that the manifest will inject the background file anyways, so why would I need to define it in the webpack.config.js as an entry point? Also, if I define content script in the manifest that get injected on certain webpages, do I need to add them in the config aswell?
@vivekranjan437
@vivekranjan437 2 жыл бұрын
thanks for this tutorial
@DokebiAgent
@DokebiAgent Жыл бұрын
Thank you very much !!!
@alinazari4131
@alinazari4131 2 жыл бұрын
Thank you for an awesome video! I had some issues with my build command in package.json and had to add the following: "export NODE_OPTIONS=--openssl-legacy-provider;" so it looked like this: "build": "export NODE_OPTIONS=--openssl-legacy-provider; webpack --config webpack.prod.js". I did the same for my "dev" script. Looks like it's an issue with the latest version of Node. Hope this helps anyone who comes across this error when running npm run build command.
@user-cc3rn8ve2m
@user-cc3rn8ve2m 11 ай бұрын
beautiful
@churraskindequeijo8418
@churraskindequeijo8418 2 жыл бұрын
Thank you very much sir
@hubertryan
@hubertryan 2 жыл бұрын
YOU ARE DA BEST
@mariomsumi822
@mariomsumi822 2 жыл бұрын
Amazing.
@takeshi_chin
@takeshi_chin Жыл бұрын
Amazing tutorial. Now I have to figure out how to use TypeScript in that project.
@takeshi_chin
@takeshi_chin Жыл бұрын
@@codifytools I'll definitely check the blog post! Your explanation was one of the clearest I've ever seen/heard.
@ThiwankaKasun
@ThiwankaKasun Жыл бұрын
nice video
@user-pk1nw1is6c
@user-pk1nw1is6c Жыл бұрын
Super!
@vanguard6712
@vanguard6712 2 жыл бұрын
Thank you for an informative video. Totally unrelated topic! May i know the VS Code plugin that you are using in this tutorial which autocompletes your code? especially at 12.22
@hiratlt
@hiratlt 2 жыл бұрын
If the extension shows a blank page: Name the function in popup.jsx starting with an uppercase, for example: popup() is wrong but Popup() is right. I don't know why it doesn't let you use lowercase but this was the fix that solved my problem. Thanks for the video.
@lucasmendonca2197
@lucasmendonca2197 2 жыл бұрын
Hi, great video! One thing that would also be useful is to configure hot reloading, so we don't need to click the update button at chrome://extensions after every file changes. Is this possible with chrome extensions?
@tommymaher4166
@tommymaher4166 2 жыл бұрын
This is awesome. Would love to see some stuff surrounding fetching data from source has I'm having some trouble finding material to do this with mv2 on react for some reason.
@tommymaher4166
@tommymaher4166 2 жыл бұрын
@@codifytools Turns out this is a bit tricker than I've thought but I'll most likely add what I've learned here so someone else can see.
@tylerdurden9676
@tylerdurden9676 2 жыл бұрын
I just skimmed through this. Does this include hot reloading, or do I have to manually reload the extension? You should make the text editor font bigger when you are recording videos.
@Lucas-mp5dw
@Lucas-mp5dw 2 жыл бұрын
remember to add in webpack.config.js the code below if creating other files named (jsx|ts|tsx), otherwise you will get import errors while building the code. resolve: { extensions: ['.js', '.jsx', '.ts', '.tsx'], },
@ipdmartins
@ipdmartins Жыл бұрын
Excelent.
@robinbeaudru6892
@robinbeaudru6892 2 жыл бұрын
Hey, thank you for the video, but could you explain how to integrate ContentScript and BackgroundScript ? It is pointless without it!
@ohchloeho55
@ohchloeho55 Жыл бұрын
Hi, thank you so much for this video! I'm trying to link an external CSS stylesheet to the jsx file but it doesn't seem to work, is there a way to do this and have the webpack configure the creation of the stylesheet and the import?
@codekhalipha7759
@codekhalipha7759 2 жыл бұрын
How can we add content_script so we ca interact with web page Thanks for this great tutorial
@aswathyraj1414
@aswathyraj1414 2 жыл бұрын
can you please provide the link to open the extension in a new tab during dev ? its not working on mine
@mikeguoynes2493
@mikeguoynes2493 2 жыл бұрын
If you run into any issue with [ERR_UNSUPPORTED_ESM_URL_SCHEME]: Only file and data URLs are supported by the default, then upgrade your node version. I installed nvm and upgraded to 14
@AbhinandanMishra1
@AbhinandanMishra1 2 жыл бұрын
It's a great request. Create the chrome extension tutorials from start to end. How to access local storage of current web page? How to change data in current page? How to implement different functions of JavaScript as we do very easily for our web page? Content.js Background.js working of other parts.
@robinbeaudru6892
@robinbeaudru6892 2 жыл бұрын
Check Google Chrome Documentations but you can declare ContentScript and BackgroundScript into the manifest.json. I don’t know if the location of the file is important as you can declare the path into the manifest.
@robinbeaudru6892
@robinbeaudru6892 2 жыл бұрын
Ok my bad, go to 7:06!!
@aymenmaamri2459
@aymenmaamri2459 2 жыл бұрын
hello everyone, i am currently working on an extension and i want to build the user interface of the extension in a modal/popup window that the user can move across the page and don't lose focus when the user clicks elsewhere
@donmikkodanm.olmillo8154
@donmikkodanm.olmillo8154 Жыл бұрын
Hi, I love your video and tutorial, would love to ask what's your extension on 4:00 where it is automatically filled up? thank you
@donmikkodanm.olmillo8154
@donmikkodanm.olmillo8154 Жыл бұрын
@@codifytools Thank you so much for the responsive reply, I was gonna guess it's copilot but many devs are fighting whether it's great or not. Anyways I love your videos, hopefully you can make a series for beginners like me
@donmikkodanm.olmillo8154
@donmikkodanm.olmillo8154 Жыл бұрын
@@codifytools Thank you!
@madmaxhasan
@madmaxhasan Жыл бұрын
Can you share what extension you use in vs code? The hint they provide is fantastic.
@madmaxhasan
@madmaxhasan Жыл бұрын
@@codifytools As expected. :(
@binodchaudhary17
@binodchaudhary17 Жыл бұрын
Greate tutorial! I tried to inject content script to gmail inbox but get an error => Uncaught Error: createRoot(...): Target container is not a DOM element. any solution?
@navuyi3243
@navuyi3243 Жыл бұрын
Is there a way to write unit tests using Jest or something similiar???
@navuyi3243
@navuyi3243 Жыл бұрын
@@codifytools I encountered several problems with jest and similiar frameworks. It throws errors with inability to use import/require outside a module, cant get it working
@juksaaapersin
@juksaaapersin Жыл бұрын
I appreciate your effort but you forgot to mention an important step like configuring multiple entry points for content scripts. Also, if someone adds another entry point to this config, their entire JS will be bundled and linked with their popup.html (it must be configured in HtmlWebpackPlugin object with chunks). Also, stuff like css/sass, imgs, etc. I think that would be an important thing to mention if you already showed this entire process. Just a tip for your future videos. Cheers.
@juksaaapersin
@juksaaapersin Жыл бұрын
@@codifytools Great man! Just a little constructive criticism, I am glad you understand. Looking forward to the video!
@kaartiknagarajan5009
@kaartiknagarajan5009 Жыл бұрын
@@codifytools Hey thank you so much for this video. Any updates on the video series?
@kaartiknagarajan5009
@kaartiknagarajan5009 Жыл бұрын
@@codifytools Got it, super content! Hope production goes well as this tutorial was incredible and I'm sure your series will help a lot of people!
@fareedezzedeen8017
@fareedezzedeen8017 2 жыл бұрын
I prefer quasar with vuejs bex Greate ui components, utls, and services
@sunilharak7645
@sunilharak7645 Жыл бұрын
I'm getting error :Uncaught EvalError: Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of script in the following Content Security Policy directive: "script-src 'self'".
@pavanobhan1105
@pavanobhan1105 Жыл бұрын
I want to be able to scrape html tables and download csv using chrome extensions, how do I develop that? I followed ur tutorial till here. I have an interview on same, please reply
@pavanobhan1105
@pavanobhan1105 Жыл бұрын
@@codifytools I am able to do it in Node JS, but I’m unable to integrate node js with extension
@koaladlt
@koaladlt 2 жыл бұрын
Hey there! Thanks a lot for this video. I'm having an issue and it's happening after dev and prod webpack setup. After running npm run build or dev, I'm having this error: Invalid configuration object. Webpack has been initialized using a configuration object that does not match the API schema. - configuration.node should be one of these: false | object { __dirname?, __filename?, global? } -> Include polyfills or mocks for various node stuff. if you have an answer, it'll be great. Thanks a lot!
@koaladlt
@koaladlt 2 жыл бұрын
@@codifytools You would not believe this, I was typing "node" instead of "mode" all the time 😂 Everything's working great, thanks a lot for this video!
@02_kdz
@02_kdz Жыл бұрын
@@koaladlt I was doing the exact same thing lol. thanks!
@koaladlt
@koaladlt Жыл бұрын
@@02_kdz Things happens lol!
@celestialgatewaycg
@celestialgatewaycg Жыл бұрын
I think I did something wrong, whenever I open a new tab, instead of the new tab itself, my extension page opens with the following error, "Your file couldn't be accessed It may have been moved, edited, or deleted. ERR_FILE_NOT_FOUND"... anyone else with this problem?
@celestialgatewaycg
@celestialgatewaycg Жыл бұрын
@@codifytools thank you so much :D
@JeetPaul
@JeetPaul Жыл бұрын
I don't think HMR is supported here, can we trick it?
@JeetPaul
@JeetPaul Жыл бұрын
@@codifytools I tried it in many way, seems like rract refresh thinks it is as production environment and doesn't estabilish the ws connection 🤔 Maybe I'm wrong
@Akkihearts007
@Akkihearts007 Жыл бұрын
Source please
@rude_boyie
@rude_boyie 2 ай бұрын
Broh you do you only have one video of coding put out more
@fareedezzedeen8017
@fareedezzedeen8017 2 жыл бұрын
Try to use a larger font size, please. 57+ years old developer
@fareedezzedeen8017
@fareedezzedeen8017 2 жыл бұрын
@@codifytools Thanks a lot 🌹🌹🌹
@athipsirisawetkunwong4658
@athipsirisawetkunwong4658 2 жыл бұрын
ผมรันไม่ได้ครับพี่ชาย
@aliraza.r10
@aliraza.r10 2 жыл бұрын
Hi, you are awesome, this video help me a lot thank you. just had issue in 9:30 that I solved. { test: /\.(sj|jsx)$/, } did not worked for me when the file is ( .js ), But when I changed it to { test: /\.js$|jsx/, } it was working.
@symbol767
@symbol767 2 жыл бұрын
THANK YOU! I was wondering why my code wasn't working, this fixed it!
@aliraza.r10
@aliraza.r10 2 жыл бұрын
@@symbol767 😊😉
@randomapperatus3773
@randomapperatus3773 9 ай бұрын
Seems like there should be a way to do this with far less steps in the world of "productivity".
Create a Chrome Extension with TypeScript React and Webpack
14:13
He sees meat everywhere 😄🥩
00:11
AngLova
Рет қаралды 9 МЛН
🌊Насколько Глубокий Океан ? #shorts
00:42
Luck Decides My Future Again 🍀🍀🍀 #katebrush #shorts
00:19
Kate Brush
Рет қаралды 8 МЛН
Always be more smart #shorts
00:32
Jin and Hattie
Рет қаралды 38 МЛН
I Built My First Google Chrome Extension!
20:52
James Q Quick
Рет қаралды 55 М.
Full Tutorial | Building a Chrome Extension in Typescript and Vite
32:58
Create a Chrome Extension with React and Webpack
9:38
WittCode
Рет қаралды 1,4 М.
Build a Coronavirus Blocker Chrome Extension
14:19
Web Dev Simplified
Рет қаралды 54 М.
Coding A Chrome Extension in JavaScript Tutorial
23:03
PedroTech
Рет қаралды 73 М.
Let's read the React source code
2:19:15
Ants Are Everywhere
Рет қаралды 4,2 М.
Creating a chrome extension in Next JS and React
13:14
TheOrdinaryDev
Рет қаралды 7 М.
Build Your First AdBlocker - Chrome Extension
12:25
DevSage
Рет қаралды 70 М.
Неразрушаемый смартфон
1:00
Status
Рет қаралды 2 МЛН
ИГРОВОВЫЙ НОУТ ASUS ЗА 57 тысяч
25:33
Ремонтяш
Рет қаралды 274 М.
Cadiz smart lock official account unlocks the aesthetics of returning home
0:30
Asus  VivoBook Винда за 8 часов!
1:00
Sergey Delaisy
Рет қаралды 1,1 МЛН