# Webbläsartillägg Projekt Del 1: Allt om webbläsare  > Skiss av [Wassim Chegham](https://dev.to/wassimchegham/ever-wondered-what-happens-when-you-type-in-a-url-in-an-address-bar-in-a-browser-3dob) ## Förhandsquiz [Förhandsquiz](https://ff-quizzes.netlify.app/web/quiz/23) ### Introduktion Webbläsartillägg lägger till extra funktionalitet till en webbläsare. Men innan du bygger ett, bör du lära dig lite om hur webbläsare fungerar. ### Om webbläsaren I den här serien av lektioner kommer du att lära dig hur man bygger ett webbläsartillägg som fungerar på Chrome, Firefox och Edge. I den här delen kommer du att upptäcka hur webbläsare fungerar och strukturera upp elementen i webbläsartillägget. Men vad är egentligen en webbläsare? Det är en mjukvaruapplikation som gör det möjligt för en slutanvändare att komma åt innehåll från en server och visa det på webbsidor. ✅ Lite historia: den första webbläsaren hette 'WorldWideWeb' och skapades av Sir Timothy Berners-Lee år 1990.  > Några tidiga webbläsare, via [Karen McGrane](https://www.slideshare.net/KMcGrane/week-4-ixd-history-personal-computing) När en användare ansluter till internet med en URL (Uniform Resource Locator)-adress, vanligtvis via Hypertext Transfer Protocol med en `http`- eller `https`-adress, kommunicerar webbläsaren med en webbserver och hämtar en webbsida. Vid denna punkt visar webbläsarens renderingsmotor sidan på användarens enhet, som kan vara en mobiltelefon, stationär dator eller laptop. Webbläsare har också förmågan att cachelagra innehåll så att det inte behöver hämtas från servern varje gång. De kan registrera historiken av en användares surfaktivitet, lagra 'cookies', som är små databit som innehåller information för att lagra en användares aktivitet, och mycket mer. En väldigt viktig sak att komma ihåg om webbläsare är att de inte är likadana! Varje webbläsare har sina styrkor och svagheter, och en professionell webbutvecklare behöver förstå hur man får webbsidor att fungera bra i olika webbläsare. Detta inkluderar att hantera små skärmar, som en mobiltelefon, samt en användare som är offline. En väldigt användbar webbplats som du förmodligen bör bokmärka i den webbläsare du föredrar att använda är [caniuse.com](https://www.caniuse.com). När du bygger webbsidor är det väldigt hjälpsamt att använda caniuse:s listor över stödda teknologier så att du kan ge bästa möjliga stöd till dina användare. ✅ Hur kan du ta reda på vilka webbläsare som är mest populära bland användarna av din webbplats? Kontrollera din analysdata - du kan installera olika analysverktyg som en del av din webbutvecklingsprocess, och de kommer att visa vilka webbläsare som används mest av de olika populära webbläsarna. ## Webbläsartillägg Varför skulle du vilja bygga ett webbläsartillägg? Det är ett praktiskt verktyg att koppla till din webbläsare när du behöver snabb åtkomst till uppgifter som du ofta upprepar. Till exempel, om du ofta behöver kontrollera färger på olika webbsidor som du interagerar med, kan du installera ett färgväljar-tillägg. Om du har svårt att komma ihåg lösenord, kan du använda ett lösenordshanterings-tillägg. Webbläsartillägg är också roliga att utveckla. De tenderar att hantera ett begränsat antal uppgifter som de utför väl. ✅ Vilka är dina favoritwebbläsartillägg? Vilka uppgifter utför de? ### Installera tillägg Innan du börjar bygga, ta en titt på processen för att bygga och distribuera ett webbläsartillägg. Även om varje webbläsare skiljer sig lite åt i hur de hanterar denna uppgift, är processen liknande på Chrome och Firefox som detta exempel på Edge:  > Obs: Se till att aktivera utvecklarläge och tillåta tillägg från andra butiker. I huvudsak kommer processen att vara: - bygg ditt tillägg med `npm run build` - navigera i webbläsaren till tilläggspanelen via knappen "Inställningar och mer" (ikonen `...`) längst upp till höger - om det är en ny installation, välj `load unpacked` för att ladda upp ett nytt tillägg från dess byggmapp (i vårt fall är det `/dist`) - eller, klicka på `reload` om du laddar om ett redan installerat tillägg ✅ Dessa instruktioner gäller tillägg du bygger själv; för att installera tillägg som har släppts till webbläsarens tilläggsbutik, bör du navigera till dessa [butiker](https://microsoftedge.microsoft.com/addons/Microsoft-Edge-Extensions-Home) och installera det tillägg du väljer. ### Kom igång Du ska bygga ett webbläsartillägg som visar din regions koldioxidavtryck, med information om din regions energianvändning och energikällor. Tillägget kommer att ha ett formulär som samlar in en API-nyckel så att du kan få åtkomst till CO2 Signal:s API. **Du behöver:** - [en API-nyckel](https://www.co2signal.com/); ange din e-postadress i rutan på denna sida så skickas en nyckel till dig - [koden för din region](http://api.electricitymap.org/v3/zones) som motsvarar [Electricity Map](https://www.electricitymap.org/map) (i Boston, till exempel, använder jag 'US-NEISO'). - [startkoden](../../../../5-browser-extension/start). Ladda ner mappen `start`; du kommer att komplettera koden i denna mapp. - [NPM](https://www.npmjs.com) - NPM är ett verktyg för paketadministration; installera det lokalt så installeras paketen som anges i din `package.json`-fil för användning av dina webbtillgångar ✅ Läs mer om paketadministration i denna [utmärkta Learn-modul](https://docs.microsoft.com/learn/modules/create-nodejs-project-dependencies/?WT.mc_id=academic-77807-sagibbon) Ta en minut och gå igenom kodbasen: dist -|manifest.json (standardinställningar här) -|index.html (HTML-markup för front-end här) -|background.js (bakgrunds-JS här) -|main.js (byggd JS) src -|index.js (din JS-kod går här) ✅ När du har din API-nyckel och regionskod redo, spara dem någonstans i en anteckning för framtida användning. ### Bygg HTML för tillägget Detta tillägg har två vyer. En för att samla in API-nyckeln och regionskoden:  Och den andra för att visa regionens koldioxidanvändning:  Låt oss börja med att bygga HTML för formuläret och styla det med CSS. I mappen `/dist` kommer du att bygga ett formulär och ett resultatområde. I filen `index.html`, fyll i det avgränsade formulärområdet: ```HTML
``` Detta är formuläret där din sparade information kommer att matas in och sparas i lokal lagring. Skapa sedan resultatområdet; under den sista formulärtaggen, lägg till några divs: ```HTMLRegion:
Carbon Usage:
Fossil Fuel Percentage: