8 React.js projektötlet a tanulás megkezdéséhez

A tanulás egyik legjobb módja a cselekedet. De gyakran a fejlesztők azzal a nagy kérdéssel küzdenek, hogy "mit építsek?"

Íme 8 projektötlet, projekt-rövidekkel és elrendezési ötletekkel kiegészítve, hogy ezzel elkezdhesse a tanulást.

  • Üzleti és valós világ: Térképstatisztikai irányítópult
  • Szórakozás és érdekes: hangszer
  • Személyes és portfólió: Blog
  • Termelékenység: Notebook
  • Rejtvények és játékok: Space Invaders
  • Eszközök és könyvtárak: Kerettéma
  • Projekt-kiegészítők: Webmentions
  • Klónok: Termékvadászat

Ez az ingyenes 50 projekt, a React & Static Web e-könyvének előnézete. A teljes 50 projektötletet, beleértve ezt a 8-at, megtalálja az 50reactprojects.com címen.

Térképstatisztikai irányítópult

Kategória: Üzleti és valós világ

Hozzon létre egy térkép-irányítópultot, amely a COVID-19 statisztikáit és földrajzi adatait mutatja.

Rövid

A globális járvány kezelése azt jelenti, hogy a koronavírushoz hasonló vírusok földrajzi elhelyezkedésük alapján másképp hatnak a világra.

Az egyes országok statisztikáinak lebontásával készített térkép hasznos módszer arra, hogy meghatározhassuk, hogy mely országokat érinti a leginkább.

1. szint

Az országonkénti statisztikák megtekintésének legegyszerűbb módja, ha egy térképet böngészhet, és az egyes országok statisztikái elérhetők az adott ország mellett.

Hozzon létre egy olyan térképészeti alkalmazást, amely a betegség.sh Coronavirus API-t használja, és jelölőket ad hozzá az egyes országok térképéhez a COVID-19 esetek számával együtt.

2. szint

Bár az egyes országokra vonatkozó statisztikák hasznosak, hasznos lehet összehasonlítani ezeket a statisztikákat az egész világon előforduló esetek számával.

Adjon hozzá egy statisztikai irányítópultot, amely megmutatja a világon a COVID-19 esetek számát, valamint az API egyéb hasznos statisztikáit.

3. szint

A jelenlegi statisztikák megszerzése jó módszer a világ jelenlegi helyzetének megértésére, de hogyan viszonyul ez történelmileg?

A korábbi adatok API segítségével grafikonokat jeleníthet meg az irányítópulton, amelyek kontextust nyújtanak a vírus növekedéséhez és terjedéséhez.

Csinálni

  • Hozzon létre egy új térképalkalmazást
  • API országok adatainak lekérése
  • Markerek hozzáadása a térképhez
  • Statisztikák hozzáadása a jelölőkhöz
  • API globális adatok lekérése
  • Hozzon létre egy statisztika irányítópultot
  • Adjon hozzá globális statisztikákat
  • API előzményadatok lekérése
  • Grafikonok hozzáadása a térképhez

Eszköztár

  • Nyílt Betegségadat-API (disease.sh)
  • React Leaflet (react-leaflet.js.org)
  • Gatsby szórólap-indító (github.com)

Oktatóanyagok

  • Hogyan hozhatunk létre koronavírus (COVID-19) irányítópultot és térképalkalmazást a React with Gatsby és a Leaflet segítségével (freecodecamp.org)
  • Hogyan adhatunk Coronavirus (COVID-19) esetstatisztikát a React térkép irányítópultjára a Gatsby segítségével (freecodecamp.org)
  • Feltérképezés a React Leaflet segítségével (egghead.io)

Ihlet

  • COVID-19 műszerfal a Johns Hopkins Egyetem (JHU) Rendszertudományi és Mérnöki Központjának (CSSE) részéről (coronavirus.jhu.ed)
  • Koronavírus (COVID-19) Irányítópult bemutató (coronavirus-map-dashboard.netlify.app)

Elrendezés ötlete

Hangszer

Kategória: Szórakozás és érdekes

Hozzon létre egy interaktív zongorát, amellyel zenét játszhat a billentyűzetével.

Rövid

Nem mindenkinek van luxusa a hangszer birtoklása, de lehet, hogy azoknak van laptopjuk, telefonjuk vagy táblagépük. A zongora birtoklása hatékony módja annak, hogy az emberek zenéljenek, még akkor is, ha korábban nem volt rá lehetőségük.

1. szint

A böngésző és a webes audio API-k segítségével olyan hangokat hozhatunk létre, amelyek összerakva valóban zenének tűnhetnek.

Hozzon létre egy gombsorozatot, amely rákattintással játssza le a léptékű jegyzeteket.

2. szint

Noha korábban nem mindenki játszott hangszeren, a hangszerhez hasonló hangszer fogalma és kezelőfelülete általában intuitívabb, mint egy csomó gomb.

Hozzon létre egy zongoraelrendezést olyan gombokkal, amelyek működnek a gombra kattintva vagy a fizikai billentyűzet használatával.

3. szint

Lehet, hogy korlátozott helyünk van a böngészőben, de sokféle jegyzet, skála és hang van, amelyet egy elektromos billentyűzet képes hozzáadni néhány hozzáadott effektussal.

Effekt váltók létrehozása, amelyek megváltoztatják a jegyzetek hangját, amikor be vannak kapcsolva.

Csinálni

  • Gombok létrehozása
  • Hang lejátszása, ha rákattint
  • Rendezze a jegyzeteket skálán
  • Hozzon létre zongora elrendezést
  • Állítsa be a billentyűzet eseményeit
  • Effektus elrendezés létrehozása
  • Hangeffektusok be- és kikapcsolása

Eszköztár

  • Reagáljon a HotKeysre (github.com)

Oktatóanyagok

  • Zongora építése reagálási kampókkal (fejlesztő)
  • Hogyan készítsünk egy zongora billentyűzetet vanília JavaScript használatával (freecodecamp.org)
  • Zongora építése a tone.js segítségével! (dev.to)
  • Hogyan készítettem egy zongorát csak 1 KB JavaScript-ben (frankforce.com)

Ihlet

  • React Guitar (react-guitar.com)

Elrendezés ötlete

Blog

Kategória: Személyes és portfólió

Hozzon létre egy blogot, amelynek segítségével megoszthatja karrierélményeit és projektjeit.

Rövid

Bármely pályafutás során, ha blogot osztasz meg tapasztalataid megosztására, ez jó módja annak, hogy az emberek tudják, min dolgozol, és segíts másoknak tanulni a tapasztalataidból.

Ez egyúttal a tanultak megerősítésének módja is, hogy a jövőben is hivatkozhasson rá.

1. szint

Ahhoz, hogy megoszthassa tapasztalatait, szükséged van egy webhelystruktúrára, amely lehetővé teszi új tartalom létrehozását és a meglévő tartalom kezelését.

Ennek egyik módja az, ha létrehoz egy jelölőfájlokat, amelyeket a webhelye forrásokkal hoz létre új oldalak létrehozásához és a bejegyzések megjelenítéséhez.

Hozzon létre egy blogot tartalomforrásként jelölőfájlok használatával.

2. szint

Ha tartalmát megjelöli fájlokban, az jó módja a statikus tartalom kezelésének, de előfordulhat, hogy nem akarja, hogy minden egyes kódot szerkesszen, amikor bejegyzést ír vagy szerkeszt.

Integráljon egy tartalomkezelő rendszert, amely lehetővé teszi új tartalom hozzáadását vagy meglévő szerkesztését egy szép felhasználói felülettel.

3. szint

Ha kódot oszt meg a blogján, a HTML natív módon támogatja a kódot és az előcímkéket, amelyek segítenek a kód olvasható formázásában. De ez nem tartalmazza a szintaxis kiemelését, amely javítja az olvashatóságot.

Integráljon egy szintaxis kiemelőt, amely olvashatóbbá teszi a kódblokkokat.

Csinálni

  • Hozzon létre egy blogot
  • Adja hozzá az első statikus tartalmat
  • Forrás statikus tartalom
  • Integrálja a CMS-t
  • Kód hozzáadása a tartalomhoz
  • Szintaxis kiemelés hozzáadása

Eszköztár

  • Netlify CMS (netlifycms.org)
  • Prism.js (prismjs.com)

Oktatóanyagok

  • Gatsby blog készítése a Netlify CMS segítségével (gatsbyjs.org)
  • Hogyan készítsd el a kódolási blogodat a Scratchből a Gatsby és az MDX használatával (freecodecamp.org)

Ihlet

  • Gatsby Netlify CMS Starter (gatsby-netlify-cms.netlify.app)

Elrendezés ötlete

Jegyzetfüzet

Kategória: Termelékenység

Hozzon létre egy notebook alkalmazást jegyzetek hozzáadásához, kezeléséhez és rendszerezéséhez.

Rövid

A jegyzetelés remek módszer arra, hogy megbizonyosodjunk arról, hogy nyomon követjük-e gondolatainkat, vagy emlékezünk-e a megbeszélés fontos elviteleire. A későbbi megtaláláshoz fontos, hogy könnyedén kezelhesse és rendezhesse őket!

1. szint

A notebook első követelménye a jegyzetelés. Ez nagyon egyszerűen elindítható, ahol valóban szüksége van valamilyen bemenetre, amely összegyűjti az írottakat, és később tárolja valahol.

Hozzon létre egy űrlapot új jegyzetek hozzáadásához és megtekintéséhez egy listában.

2. szint

Annak érdekében, hogy később megtalálja a jegyzeteit, szeretne valamilyen módon rendezni ezeket a jegyzeteket és megkeresni őket. Ez magában foglalja kategóriák vagy címkézési rendszer, valamint felhasználói felület hozzáadását a kereséshez.

Adja hozzá a jegyzetek címkézésének vagy kategorizálásának lehetőségét, és adjon hozzá egy adatbevitelt, amelyen keresztül kereshet.

3. szint

Akár rájövünk, akár nem, kapcsolatokat találhatunk gondolataink és főleg jegyzeteink között, ahol kihasználhatjuk ezt a gondolati hálót a noteszgépünk számára.

A gondolatok hálózatának létrehozásához adja hozzá a Roam Research által ösztönzött jegyzetek összekapcsolását.

Csinálni

  • Hozzon létre egy űrlapot
  • Tárolja az új jegyzeteket
  • Sorolja fel a jegyzeteket
  • Címkék vagy kategóriák hozzáadása
  • Jegyzet keresés hozzáadása
  • Jegyzetháló hozzáadása

Eszköztár

  • Gatsby Brain téma (github.com)
  • Fuse.js (fusejs.io)

Oktatóanyagok

  • Hogyan adhat keresést a React alkalmazáshoz a Fuse.js (freecodecamp.org) segítségével

Ihlet

  • Hab (foambubble.github.io)
  • Roam Research (roamresearch.com)
  • Gatsby Garden téma (github.com)

Elrendezés ötlete

Űrbéli megszállók

Kategória: Rejtvények és játékok

Hozzon létre egy űrrepülőgépek űrhajó lövöldözős játékát, hogy ellenséges hajók több hullámát lője.

Rövid

A Space Invaders egy klasszikus arcade, amely egy űrhajóba sodor egy idegen invázióval szemben. Amint megpróbálja lelőni őket, visszalőnek, és csak korlátozott védelemmel rendelkezik, mielőtt nyitott lenne az ütésre.

1. szint

A játék lényege, hogy egy űrhajó körül mozogsz, és megpróbálsz fegyverekkel eltalálni egy csomó idegent. Bár van köztetek, sokan vannak.

Hozzon létre egy űrhajót, amely képes mozogni és idegeneket lőni, amelyek nem mozognak.

2. szint

A játékot bonyolulttá teszi az, hogy az idegenek folyamatosan mozognak. Valahányszor a játszótér szélére érnek, leengednek és felgyorsulnak, közelebb kerülve a hajódhoz.

Adjon hozzá mozgást az idegenekhez, akik egymás mellett haladnak a játéktéren. Valahányszor az idegenek elérik az egyik oldalt, le kell esniük egy szintet. Bizonyos időközönként fel kell gyorsulniuk.

3. szint

Te magad vagy, de szerencsére némi védelmet kaphatsz. Vannak pajzsai, amelyek mögé bújhat, amelyek megvédik Önt, amíg tartanak.

Hozzon létre több pajzsot a játékos űrhajó előtt, amelyek korlátozott károkat okozhatnak.

Csinálni

  • Hozzon létre egy új játékot
  • Statikus idegenek létrehozása
  • Hozzon létre egy játékos űrhajót
  • Adjon hozzá űrhajó vezérlőket
  • Adjon hozzá űrhajó fegyvert
  • Konfigurálja az idegen károkat
  • Tedd idegenek lőni vissza
  • Tedd idegenek mozogni
  • Adjon hozzá idegen intervallumokat
  • Pajzsok hozzáadása

Oktatóanyagok

  • Tanuljon JavaScriptet 7 játék felépítésével (freecodecamp.org)

Ihlet

  • Space Invaders (codepen.io)

Elrendezés ötlete

Keret téma

Kategória: Eszközök és könyvtárak

Hozzon létre egy Gatsby témát, amely egy projektet állít be a Tailwind CSS keretrendszerrel.

Rövid

Fejlesztőként általában egy csomó hasonló lépést kell végrehajtanunk, bármikor új projektet hozunk létre. De az olyan eszközök, mint a témák, elvonatkoztatják ezeket a lépéseket, és könnyen kezelhető módon csomagolják őket, ami minden új projektnél használható.

1. szint

A Gatsby témák egy plugin-szerű rendszer, ahol kihasználhatjuk a Gatsby csővezeték előnyeit, hogy az funkcionalitást csomagként osszuk meg az npm-en.

Ez megnyitja az ajtót, hogy valóban bármit megtegyünk, amit egy Gatsby webhelyen tennénk, de újrafelhasználhatóvá tennénk bármely Gatsby webhely számára.

Hozzon létre egy új Gatsby témát, amely használatával új stílus útmutató oldalt hoz létre minden olyan projekthez, amelyhez hozzá van adva.

2. szint

A témák célja nem csak oldalak létrehozása, hanem olyan funkcionalitás hozzáadása, amely produktívvá tesz minket. Ide tartoznak például a keretek és a projektkonfigurációk.

Adjon hozzá egy CSS keretrendszert a Gatsby témához, amely lehetővé teszi a hozzáadott projekt számára, hogy ezt a keretrendszert használja.

3. szint

Néha a témák jobbak csak eszközként, néha hasznos a véleményezés. A CSS keretrendszer hasznos funkcionalitásának egyik módja az állomány-összetevők létrehozása.

Hozzon létre újrafelhasználható React összetevőket a CSS keretrendszer használatával, amely felhasználható a projektben, amelyhez a téma hozzá van adva.

Csinálni

  • Hozzon létre egy új témát
  • Hozzáadás a példa projekthez
  • Hozzon létre új stílusoldalt
  • CSS keretrendszer hozzáadása
  • Használjon CSS-t például
  • Hozzon létre összetevőket
  • Használjon alkatrészeket

Eszköztár

  • Gatsby témák (gatsbyjs.org)
  • Tailwind (tailwindcss.com)

Oktatóanyagok

  • Téma építése (gatsbyjs.org)
  • Mi az a Tailwind CSS, és hogyan tudom hozzáadni a webhelyemhez vagy a React alkalmazáshoz? (freecodecamp.org)

Ihlet

  • Gatsby Tailwind téma (github.com)

Elrendezés ötlete

Webmentions

Kategória: Projekt-kiegészítők

Webhely-integráció hozzáadása egy olyan webhelyhez, amely megmutatja a Twitter-interakciókat a webhelypel.

Rövid

A társas interakció hatásos módszer arra, hogy minél több közönséget és beszélgetést hozzunk létre azokról a témákról, amelyekről írunk.

Ha van valami a webhelyen, az azt mutatja, hogy az interakció egyaránt hasznos lehet arra, hogy ösztönözze az embereket arra, hogy bekapcsolódjanak, vagy hogy az emberek úgy érezzék, részesei lehetnek ennek.

1. szint

A Webmentions használatához a webhelyet meta tag-ekkel kell konfigurálni, hogy információkat nyújtson.

Adja hozzá a megfelelő metacímkéket egy webhelyhez, és ellenőrizze annak használatát a webmention.io webhelyen.

2. szint

A Webmentions API lehetővé teszi a kapcsolatok programozott megtekintését a közösségi interakciókban a webhely URL-jéből. Ez lehetővé teszi, hogy megkapja az interakció típusát, és még az adott személy profilját is.

Csatlakoztasson egy weboldalt a Webmentions szolgáltatáshoz, és adjon hozzá egy közösségi interakciót a blogbejegyzések oldalaihoz.

3. szint

Most, hogy a weboldal az összes interakciót bemutatja, egy egyszerű módszert kell használni a beszélgetéshez való csatlakozásra.

Adjon hozzá egy közösségi linket, amelyre kattintva tweetet hoz létre az oldalra mutató linkkel.

Csinálni

  • Adjon hozzá metacímkéket a webhelyhez
  • Ellenőrizze a metacímkéket
  • Csatlakozás a Webmentionhoz
  • Csatlakozzon közösségi oldalhoz Bridgyhez
  • Sorolja fel az interakciókat
  • Tweet hozzáadása gomb

Eszköztár

  • Webmention.io (webmention.io)
  • Bridgy (brid.gy)
  • Gatsby Plugin Webmention (github.com)

Oktatóanyagok

  • Indieweb pt2: A Webmentions használata tizenegyben (mxb.dev)
  • Ügyféloldali webmentiók (swyx.io)
  • A Webmentions használatának megkezdése Gatsby-ban (knutmelvaer.no)
  • A Gatsby plugin webmentions építése (christopherbiscardi.com)

Ihlet

  • Knut Melvær (knutmelvaer.no)
  • Swyx (swyx.io)

Elrendezés ötlete

Termékvadászat

Kategória: Klónok

Hozzon létre egy Product Hunt klónot, amely lehetővé teszi az emberek számára, hogy új termékeket tegyenek közzé minősítésekkel.

Rövid

Mindannyian a termékekért élünk, legyen szó mobiltelefonjainkról vagy a laptopjainkon használt alkalmazásokról.

Bár rengeteg termék van a világon, nehéz lehet eligazodni a jóban és a rosszban. Az olyan eszközök, mint a Product Hunt, platformot kínálnak az új eszközök megismerésére, valamint mások reakcióinak és véleményeinek megszerzésére.

1. szint

Az új termékek megismerésének legfontosabb része maga a termék. Szeretnénk tudni, hogy mi a termék, hogyan néz ki és hogyan működik.

Hozzon létre egy oldalt, amely lehetővé teszi új termék hozzáadását a webhelyhez címmel, képpel és leírással.

2. szint

Amikor megismerjük a termékeket, a vélemények segítségével megbízhatunk egy terméket a vásárlás előtt. Segít abban, hogy bizalmat szerezzünk abban, mire fogjuk fordítani a pénzünket vagy az idejüket.

Adja hozzá, hogy az emberek véleményt fűzzenek az egyes termékekről.

3. szint

Az emberek imádják a termékeket, így rengeteg ilyen van a világon. Túl sokan vannak ahhoz, hogy kézzel válogassanak, ezért szükségünk van egy mechanizmusra a kereséshez és a böngészéshez.

Adja hozzá a termékek keresésének és kategóriák szerinti böngészésének lehetőségét.

Csinálni

  • Hozzon létre termék webhelyet
  • Hozzon létre adatbázist
  • Adja hozzá a termék formáját
  • Termék hozzáadása az adatbázishoz
  • Kérjen terméket az oldalra
  • Ellenőrzési űrlap hozzáadása
  • Vélemények hozzáadása az adatbázishoz
  • Vélemények hozzáadása a termékhez
  • Termékkeresés hozzáadása
  • Termékkategóriák hozzáadása

Eszköztár

  • Hasura (hasura.io)

Oktatóanyagok

  • Product Hunt klónalkalmazás készítése a Hasura és a Next.js (logrocket.com) használatával
  • A Product Hunt alapvető verziójának elkészítése a React használatával (freecodecamp.org)

Elrendezés ötlete

További projektek

Ha további projektötleteket szeretne, nézzen meg 50 projektet a React & Static webhez!

Ne kérdezd meg magadtól, mit építsek? Ingyenes letöltés az 50reactprojects.com webhelyről

Kövessen engem további Javascript, UX és egyéb érdekességekért!

  • ? Kövess a Twitteren
  • ? ️ Iratkozzon fel a Youtube-ra
  • ✉️ Iratkozzon fel a hírlevelemre