Next.js

Next.js
Оригинални аутор(и)Гиљермо Раух
Прво издањеоктобар 2016.; пре 8 година (2016-10)
Стабилно издање
14.1.4
Репозиторијум Уреди на Википодацима
Написан у
Платформавишеплатформски
Величина17.0 MB
ЛиценцаMIT лиценца
Веб-сајтnextjs.org

Next.js је веб развојни оквир отвореног кода који је креирала приватна компанија Vercel која пружа веб апликације засноване на React-у са рендеровањем на страни сервера и генерисањем статичког веб сајта .[1]

React документација помиње Next.js међу „препорученим алаткама“ саветујући је програмерима приликом „израде веб локације коју приказује сервер са Node.js“. [2] Док традиционалне React апликације могу рендерујовати свој садржај само у претраживачу на страни клијента, Next.js проширује ову функционалност тако да укључује апликације које се приказују на страни сервера.

Ауторска права и заштитни знаци за Next.js су у власништву Vercel-a, [3] који такође одржава и води развој отвореног кода. [4]

Позадина

Next.js је React фрејмворк који омогућава неколико додатних функција, укључујући приказивање на страни сервера и генерисање статичких веб страница . [5] React је JavaScript библиотека која се традиционално користи за израду веб апликација које се приказују у клијентском прегледачу помоћу JavaScript-а. [6] Међутим, програмери су идентификовали неколико изазова са овом приступу, као што су непостојање JavaScript подршке или њено онемогућавање код одређених корисника, потенцијални безбедносни проблеми, знатно дуже време учитавања страница и негативан утицај на SEO оптимизацију сајта. [6] Оквири као што је Next.js заобилазе ове проблеме тако што дозвољавају да се нека или цела веб локација прикаже на страни сервера пре него што се пошаље клијенту. [6] [7] Next.js је један од најпопуларнијих оквира за React. [8] То је један од неколико препоручених „ланаца алата“ доступних приликом покретања нове апликације, а сви обезбеђују слој апстракције за помоћ у уобичајеним задацима.[9] Next.js захтева Node.js и може се иницијализовати помоћу npm-а .

Google је допринео пројекту Next.js, укључујући 43 pull request-a у 2019.[10] Од марта 2022. године, оквир користе многе велике веб странице, укључујући Волмарт, Apple, Најки, Netflix, TikTok, Uber, Lift и Starbucks. [11] Почетком 2020. године, Vercel је прикупио 21 милион долара у финансирању Серије А како би подржао побољшања софтвера. Оригинални аутор оквира, Гиљермо Раух, тренутно је извршни директор Vercela, а водећи одржавач пројекта је Тим Њуткенс.[12]

Историјат развоја

Next.js је први пут објављен као пројекат отвореног кода на GitHub-а 25. октобра 2016. Првобитно је развијен на основу шест принципа: тренутачно доступна функционалност која не захтева подешавање, доступност JavaScript-а, све функције су написане у JavaScript-у, аутоматско дељење кода и приказивање на серверу, подесиво преузимање података, антиципирање захтева и поједностављивање имплементације. [13]

Next.JS 2.0 је најављен у марту 2017. укључујући неколико побољшања која су олакшала рад са малим веб локацијама. Такође је повећао ефикасност израде и побољшао скалабилност функције замене модула уживо . [14]

Верзија 7.0 је објављена у септембру 2018. са унапређеним руковањем грешкама и подршком за React-ов контекст API за унапређено динамичко управљање рутама. Ова верзија такође је била прва која је надограђена на Webpack 4. [15]

Верзија 8.0 је објављена у фебруару 2019. и била је прва која је омогућила примену апликација без сервера, где је код раздвојен на анонимне функције које се извршавају по захтеву. Ова верзија је такође смањила време и ресурсе потребне за статички извоз и побољшала перформансе у односу на претходне верзије.[16]

Верзија 9.3, најављена у марту 2020, је укључивала различите оптимизације и глобалну подршку Sass (стилски језик) и CSS модуле. [17]

Дана 27. јула 2020. објављена је верзија Next.js 9.5, додајући нове могућности као што су инкрементална статичка регенерација, поновно уписивање и подршку за преусмеравања. [18]

15. јуна 2021. објављена је верзија Next.js 11, која је између осталог увела: подршку за Webpack 5, преглед функционалности за колаборативно кодирање у реалном времену „Next.js Live“ и експерименталну функцију аутоматске конверзије из Create React апликације у Next.js компатибилан образац „Create React App Migration“. [19]

26. октобра 2021, Next.js 12 је пуштен у продају, додајући Rust компајлер, чинећи компилацију бржом, подршку за AVIF, Edge Functions & Middleware и Native ESM & URL Imports. [20]

Vercel је 26. октобра 2022. објавио Next.js 13. Ово велико издање донело је нови образац рутирања у бета верзији, са додатком App Router-а који укључује подршку за распореде, компоненте React Server, стриминг и нови сет метода за преузимање података. Штавише, Vercel је најавио нови ланац алата за фронт-енд развој под називом Turbo, укључујући Turbopack као наследника Webpack-а, Turborepo за инкременталне системе израде. [21]

У мају 2023. Vercel је објавио Next.js 13.4. Ово је са собом донело стабилну верзију App Router-а, која омогућава програмерима да га користе у производњи. [22]

У октобру 2023. Vercel је објавио Next.js 14, који долази са побољшаним управљањем меморијом уз коришћење edge runtime-а. [23]

Стилизовање и функционалности

Next.js подржава стилизовање са CSS-ом, као и унапред компајлирани Sass и Scss, CSS-in-JS и стилизовани JSX . [24] Поред тога, израђен је са подршком за TypeScript и паметним пакетом. [25] Transpiler отвореног кода SWC се користи за трансформацију и превођење кода у JavaScript који може да користи претраживач. [26] Webpack, још једна алатка отвореног кода, користи се за накнадно спајање модула, међутим тренутно се замењује TurboPack-ом. [27] Сви ови алати се користе са npm-ом у терминалу. [28]

Главна карактеристика Next.js-а је његова употреба рендеровања на страни сервера како би се смањио терет веб претраживача и обезбедила побољшана безбедност[тражи се извор]. Ова функционалност омогућава да се странице богате садржајем издвајају за приказивање на страни сервера, што се може применити на било који део апликације или целокупан систем. [29]

Исто тако, ова техника се може применити и за посетиоце који први пут посећују страницу, што доприноси смањењу оптерећења веб претраживача док преузимају било које од средстава сајта. [30]

Функција "hot reloading" омогућава детекцију промена у коду и аутоматско поновно приказивање одговарајућих страница без потребе за поновним покретањем сервера. Ово значи да се измене у коду одмах приказују у веб претраживачу, иако ће неки прегледачи захтевати освежавање странице. [29]

Next.js користи рутирање засновано на страницама за погодност програмера и подржава динамичко рутирање. Друге карактеристике укључују замену "hot module"-a уживо, аутоматско раздвајање кода које укључује само код потребан за учитавање странице, и претходно преузимање странице како би се смањило време учитавања. [29]

Next.js нуди функције као што су getStaticProps и getServerSideProps за преузимање података било током процеса израде или са сваким захтевом, пружајући разноврсност за различите типове садржаја. Такође, нуди аутоматску оптимизацију слика за различите величине екрана и уређаје, побољшавајући перформансе веб странице и корисничко искуство. [31]

Next.js такође подржава инкременталну статичку регенерацију [32] и генерисање статичког сајта – компајлирана верзија веб локације се обично прави током израде и чува као .next фолдер. Када корисник упути захтев, унапред направљене верзија преко статичних HTML страница се кешује и шаље се назад. Ово чини време учитавања веома брзим, али није погодно за сваку веб локацију, посебно за интерактивне сајтове који се често мењају и користе много корисничког уноса.

Види још

Референце

  1. ^ „Next.js: brzo predstavljanje - Fragment Studio”. www.fragment-studio.com (на језику: санскрит). Приступљено 2024-04-09. 
  2. ^ „Recommended Toolchains” (HTML). React documentation (на језику: енглески). Приступљено 10. 7. 2021. 
  3. ^ Next.js Brand Guidelines, 26. 8. 2022 
  4. ^ „Develop. Preview. Ship. For the best frontend teams – Vercel” (HTML). vercel.com (на језику: енглески). Архивирано из оригинала 2021-10-06. г. Приступљено 2020-09-22. 
  5. ^ „Differences Between Static Generated Sites And Server-Side Rendered Apps”. Smashing Magazine (на језику: енглески). 2020-07-02. Приступљено 2020-10-19. 
  6. ^ а б в Thakkar, Mohit (2020), Thakkar, Mohit, ур., „Next.js”, Building React Apps with Server-Side Rendering: Use React, Redux, and Next to Build Full Server-Side Rendering Applications (на језику: енглески), Berkeley, CA: Apress: 93—137, ISBN 978-1-4842-5869-9, doi:10.1007/978-1-4842-5869-9_3, Приступљено 2020-10-20 
  7. ^ Thakkar, Mohit (2020), Thakkar, Mohit, ур., „Adding Server-Side Rendering to Your React Application”, Building React Apps with Server-Side Rendering: Use React, Redux, and Next to Build Full Server-Side Rendering Applications (на језику: енглески), Berkeley, CA: Apress: 139—152, ISBN 978-1-4842-5869-9, doi:10.1007/978-1-4842-5869-9_4, Приступљено 2020-10-20 
  8. ^ Asay, Matt (2. 12. 2019). „Why front-end development may be the new frontier”. TechRepublic (на језику: енглески). Приступљено 2020-10-20. 
  9. ^ Lukman, Adebiyi Adedotun (2020-09-17). „Comparing Styling Methods In Next.js”. Smashing Magazine (на језику: енглески). Приступљено 2020-10-20. 
  10. ^ Asay, Matt (1. 2. 2020). „An insider's look at Google's web framework contributions to Next.js and more”. TechRepublic (на језику: енглески). Приступљено 2020-10-19. 
  11. ^ Thakkar, Mohit (2020), Thakkar, Mohit, ур., „Next.js”, Building React Apps with Server-Side Rendering: Use React, Redux, and Next to Build Full Server-Side Rendering Applications (на језику: енглески), Berkeley, CA: Apress: 93—137, ISBN 978-1-4842-5869-9, doi:10.1007/978-1-4842-5869-9_3, Приступљено 2020-10-20 
  12. ^ Donovan, Ryan (2020-10-07). „Static site generation with single page app functionality? That's what's coming Next(.js)” (html). Stack Overflow Blog (на језику: енглески). Приступљено 2020-10-20. 
  13. ^ Krill, Paul (2016-10-31). „Next step after Node.js: Framework for 'universal' JavaScript apps”. InfoWorld (на језику: енглески). Приступљено 2020-10-20. 
  14. ^ Krill, Paul (2017-03-28). „Next.js 2.0 plays better with React and JavaScript”. InfoWorld (на језику: енглески). Приступљено 2020-10-20. 
  15. ^ Krill, Paul (2018-09-21). „Next.js 7 framework compiles faster, supports WebAssembly”. InfoWorld (на језику: енглески). Приступљено 2020-10-20. 
  16. ^ Krill, Paul (2019-02-14). „Next.js 8 now supports serverless apps”. InfoWorld (на језику: енглески). Приступљено 2020-10-20. 
  17. ^ Krill, Paul (2020-03-12). „Next.js upgrade emphasizes static site generation”. InfoWorld (на језику: енглески). Приступљено 2020-10-20. 
  18. ^ Krill, Paul (27. 7. 2020). „Next.js adds incremental static pages regeneration”. InfoWorld. Архивирано из оригинала 2. 10. 2020. г. Приступљено 22. 9. 2020. 
  19. ^ „Next.js 11”. Приступљено 2021-07-10. 
  20. ^ „Next.js 12”. nextjs.org (на језику: енглески). Приступљено 2021-10-27. 
  21. ^ Orbán, Balázs (2022-10-25). „Next.js 13”. nextjs.org (на језику: енглески). Приступљено 2023-06-09. 
  22. ^ Markbåge, Sebastian, Tim Neutkens (2023-05-04). „Next.js 13.4”. nextjs.org (на језику: енглески). Приступљено 2023-06-07. 
  23. ^ „Next.js 14.0.0”. nextjs.org (на језику: енглески). 2023-12-08. Приступљено 2023-11-26. 
  24. ^ Lukman, Adebiyi Adedotun (2020-09-17). „Comparing Styling Methods In Next.js”. Smashing Magazine (на језику: енглески). Приступљено 2020-10-20. 
  25. ^ Krill, Paul (14. 2. 2019). „Next.js 8 now supports serverless apps”. InfoWorld. Архивирано из оригинала 2. 10. 2020. г. Приступљено 22. 9. 2020. 
  26. ^ „Architecture: Next.js Compiler | Next.js”. nextjs.org (на језику: енглески). Приступљено 2023-08-19. 
  27. ^ „Architecture: Turbopack | Next.js”. nextjs.org (на језику: енглески). Приступљено 2023-08-19. 
  28. ^ Asay, Matt (1. 2. 2020). „An insider's look at Google's web framework contributions to Next.js and more”. TechRepublic (на језику: енглески). Приступљено 2020-10-19. 
  29. ^ а б в Thakkar, Mohit (2020), Thakkar, Mohit, ур., „Next.js”, Building React Apps with Server-Side Rendering: Use React, Redux, and Next to Build Full Server-Side Rendering Applications (на језику: енглески), Berkeley, CA: Apress: 93—137, ISBN 978-1-4842-5869-9, doi:10.1007/978-1-4842-5869-9_3, Приступљено 2020-10-20 
  30. ^ Thakkar, Mohit (2020), Thakkar, Mohit, ур., „Adding Server-Side Rendering to Your React Application”, Building React Apps with Server-Side Rendering: Use React, Redux, and Next to Build Full Server-Side Rendering Applications (на језику: енглески), Berkeley, CA: Apress: 139—152, ISBN 978-1-4842-5869-9, doi:10.1007/978-1-4842-5869-9_4, Приступљено 2020-10-20 
  31. ^ „getting-started-with-next-js”. GFG. 12 Mar, 2024. Приступљено 4 April 2024.  Проверите вредност парамет(а)ра за датум: |date= (помоћ)
  32. ^ „Incremental Static Regeneration with Next.js”. Vercel (на језику: енглески). Приступљено 2022-03-06. 

Спољашње везе

Read other articles:

NGC 300 DescubrimientoDescubridor James Dunlop[1]​Fecha 1826[1]​Datos de observación(época J2000.0)Tipo Galaxia espiral (SA(s)d)Ascensión recta 00h 54m 53,5sDeclinación -37° 41' 04Magnitud aparente (V) 8,13[2]​Tamaño aparente (V) 21,9' × 15,5'Corrimiento al rojo 0,000480Velocidad radial 144 km/sBrillo superficial 14,5[1]​Constelación SculptorOtras designacionesESO 295- G 020 · ESO 005232-3757.2 · AM 0052-375 ·MCG -06-03-005 · 2MASX J00545347-3741037 · IRAS...

 

This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages) This article possibly contains original research. Please improve it by verifying the claims made and adding inline citations. Statements consisting only of original research should be removed. (August 2014) (Learn how and when to remove this template message) This article does not cite any sources. Please help improve this article by adding ...

 

Miko mengenakan hakama Mahasiswi mengenakan furisode dan hakama sewaktu mengikuti wisuda Hakama (袴code: ja is deprecated ) adalah pakaian luar tradisional Jepang yang dipakai untuk menutupi pinggang sampai mata kaki. Dipakai sebagai pakaian bagian bawah, hakama merupakan busana resmi pria untuk menghadiri acara formal seperti upacara minum teh, pesta pernikahan, dan seijin shiki. Anak laki-laki mengenakannya sewaktu merayakan Shichi-Go-San. Montsuki yang dikenakan bersama hakama dan haori m...

Pour les articles homonymes, voir Boyne. La Boyneruisseau de l'Auroux La Boyne à Cabrières la Boyne sur OpenStreetMap. Caractéristiques Longueur 24,9 km [1] Bassin 77 km2 [1] Bassin collecteur l'Hérault Nombre de Strahler 3 Organisme gestionnaire EPTB SMBFH ou syndicat mixte du bassin du fleuve Hérault[2] Régime cévenol Cours Source au sud du Mas Nouguier dans les Monts Cabrières · Localisation Mourèze · Coordonnées 43° 35′ 03″ N, 3° 18′ 34

 

Defunct IPL franchise based in Hyderabad, India (2008–2012) Deccan ChargersPersonnelCaptainKumar SangakkaraCoachDarren LehmannOwnerDeccan ChronicleTeam informationCityHyderabad, Telangana, IndiaFounded2008; 15 years ago (2008)Dissolved2012; 11 years ago (2012)Home groundRajiv Gandhi International Stadium, HyderabadHistoryIPL wins1 (2009) Deccan Chargers (abbreviated as DC) is a defunct IPL franchise which was based in the city of Hyderabad.[1]...

 

Open world survival horror game Video gameProject ZomboidDeveloper(s)The Indie StonePublisher(s)The Indie StoneComposer(s)Armin HassPlatform(s)Java[1]Microsoft WindowsOS XLinuxGenre(s)Survival, RPGMode(s)Singleplayer, Multiplayer Project Zomboid is an open-world, isometric video game developed by British and Canadian independent developer The Indie Stone. The game is set in the post-apocalyptic, zombie-infested exclusion zone of the fictional Knox Country (formerly Knox County), Kentu...

Osiloskop merek Textronix Osiloskop adalah alat ukur elektronika yang fungsinya memproyeksikan bentuk sinyal listrik agar dapat dilihat dan dipelajari. Pada osiloskop dilengkapi dengan tabung sinar katode. Kemudian peranti pemancar elektron akan memproyeksikan sorotan elektron ke layar tabung sinar katode. Sorotan elektron tersebut membekas pada layar. Rangkaian khusus dalam osiloskop akan menyebabkan sorotan bergerak berulang-ulang dari kiri ke kanan. Proses pengulangan ini menyebabkan bentu...

 

2012–2014 Spider-Man film series and Marvel Cinematic Universe character Fictional character Peter ParkerMarc Webb's The Amazing Spider-Man and Marvel Cinematic Universe characterPromotional image of Andrew Garfield as Peter Parker / Spider-Man as depicted in The Amazing Spider-Man (2012)First appearanceThe Amazing Spider-Man (2012)Last appearanceSpider-Man: No Way Home (2021)Based onSpider-Manby Stan LeeSteve DitkoAdapted by James Vanderbilt Marc Webb Alvin Sargent Steve Kloves Portrayed b...

 

Subspecies of fish Columbia River redband trout Redband trout in the Boise National Forest, Idaho Scientific classification Domain: Eukaryota Kingdom: Animalia Phylum: Chordata Class: Actinopterygii Order: Salmoniformes Family: Salmonidae Genus: Oncorhynchus Species: O. mykiss Subspecies: O. m. gairdneri Trinomial name Oncorhynchus mykiss gairdneri(Richardson, 1836) The Columbia River redband trout,[1] the inland redband trout[2] or the interior redband trout[1&#...

Can of Finnish Olvi beer. Finland has a long history of beer dating back to the Middle Ages. The oldest still-existing commercial brewery in Finland and Nordic countries is Sinebrychoff, founded in 1819. The Finnish Beer Day (Finnish: Suomalaisen oluen päivä) is celebrated on 13 October to commemorate the founding of the Sinebrychoff brewery and the birth of Finnish beer. The largest Finnish brewers are Hartwall, Olvi and Sinebrychoff. Most of the beers brewed in Finland are pale lagers. Fi...

 

Species of plant Galium verum Scientific classification Kingdom: Plantae Clade: Tracheophytes Clade: Angiosperms Clade: Eudicots Clade: Asterids Order: Gentianales Family: Rubiaceae Genus: Galium Species: G. verum Binomial name Galium verumL. Yellow bedstraw (Sânziana galbenă) from the spontaneous flora of the Transylvanian Plateau Galium verum (lady's bedstraw[1] or yellow bedstraw) is a herbaceous perennial plant of the family Rubiaceae. It is widespread across most of Europe...

 

Mezzogiorno na brązowo MezzogiornoⓘMezzogiorno [ˌmɛd.d͡zoˈd͡ʒor.no] – obszar obejmujący Basilicatę, Kampanię, Kalabrię, Apulię i Sycylię na południu Włoch, jak również Molise i Abruzję, które geograficznie leżą w środkowych lub południowo-środkowych Włoszech. Niektórzy włączają do Mezzogiorno również Sardynię i południową część Lacjum. Włosi często mówią o południowych Włoszech Il Meridione (południe). Wyrażenia Meridione i Mezzogiorno ...

Póvoa de Cós Póvoa de CósLargo da Capela da Sra. da Graça Gentílico Povoense Distrito Leiria Município Alcobaça Freguesia Cós Área ? km² População ? hab. (?) Densidade ? hab./km² Orago Nossa Senhora da Graça Código postal 2460 Povoações de Portugal Póvoa de Cós é uma localidade situada no centro de Portugal, no distrito de Leiria. Faz parte do município de Alcobaça, freguesia de Cós.[1] Aí foram feitas descobertas arqueológicas relevantes, nomeadamente uma villa roma...

 

Son of Mahatma Gandhi and Indian activist This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Devdas Gandhi – news · newspapers · books · scholar · JSTOR (March 2020) (Learn how and when to remove this template message) Devdas GandhiDevadas Gandhi in 1931BornDevdas Mohandas Gandhi(1900-05-22)22 May 1900Colony of...

 

Mê Thảo, thời vang bóng Đạo diễnViệt LinhSản xuấtDương Minh HoàngTác giảPhạm Thùy NhânSerge Le PeronDựa trênChùa Đàncủa Nguyễn TuânDiễn viênĐơn DươngDũng NhiMinh TrangThúy NgaHãng sản xuấtHãng phim Giải Phóng Công chiếu2003 Ý 16 tháng 7 năm 2004 Việt Nam [1]8 tháng 12 năm 2004 PhápNgôn ngữTiếng ViệtKinh phí3,5 tỉ đồng Mê Thảo - Thời vang bóng là một phim điện ảnh Việt Nam do Việt Linh làm ...

For the Guaraní mythical figure, see Kurupi. Genus of dinosaur from the Late Cretaceous period Kurupi itaataTemporal range: Maastrichtian, 70–66 Ma PreꞒ Ꞓ O S D C P T J K Pg N ↓ Skeletal diagram Scientific classification Domain: Eukaryota Kingdom: Animalia Phylum: Chordata Clade: Dinosauria Clade: Saurischia Clade: Theropoda Family: †Abelisauridae Genus: †KurupiIori et al., 2021 Type species †Kurupi itaataIori et al., 2021 Kurupi is a genus of abelisaurid theropod dino...

 

Volta Lugar designado por el censo VoltaUbicación en el condado de Merced en California Ubicación de California en EE. UU.Coordenadas 37°05′51″N 120°55′34″O / 37.0975, -120.92611111111Entidad Lugar designado por el censo • País Estados Unidos • Estado  California • Condado MercedFundación 31 de marzo de 2010Superficie   • Total 11,48 km² Altitud   • Media 35 m s. n. m.Población (2010)   ...

 

Organic matter in soils resulting from decay of plant and animal materials This article is about the organic matter in soil. For the food, see Hummus. For the band, see Humus (band). Humus has a characteristic black or dark brown color and is an accumulation of organic carbon. Besides the three major soil horizons of (A) surface/topsoil, (B) subsoil, and (C) substratum, some soils have an organic horizon (O) on the very surface. Hard bedrock (R) is not in a strict sense soil. In classical[...

Family of languages KuliakRubGeographicdistributionKaramoja region, northeastern UgandaLinguistic classificationNilo-Saharan?KuliakProto-languageProto-KuliakSubdivisions Ik Nyang'i–Soo Glottologkuli1252 The Kuliak languages, also called the Rub languages,[1] are a group of languages spoken by small relict communities in the mountainous Karamoja region of northeastern Uganda. Nyang'i and Soo are moribund, with a handful of elderly speakers. However, Ik is vigorous and growing. Word o...

 

List of lieutenant governors of Lowa, US This is a list of lieutenant governors of the U.S. state of Iowa. History Prior to 1990, the governor and lieutenant governor were elected in separate elections; since then they have run together on the same ticket.[1] List Image Lt. Governor Took office Left office Party Governor(s) served under Oran Faville 1858 1860 Republican Ralph P. Lowe Nicholas J. Rusch 1860 1862 Samuel J. Kirkwood John R. Needham 1862 1864 Enoch W. Eastman 1864 1866 Wi...

 

Strategi Solo vs Squad di Free Fire: Cara Menang Mudah!