Jump to content

Hvorfor CT3A?

Vi startet create-t3-app fordi Theo↗ ikke Ăžnsket Ă„ lage en mal for favoritteknologiene sine. Inspirert av create-next-app, Astro’s CLI↗ og en forkjĂŠrlighet for typesikkerhet, har create-t3-app-teamet jobbet hardt for Ă„ skape et best mulig utgangspunkt for nye T3-stakkprosjekter.

Hvis du er interessert i Ä bruke Next.js pÄ en typesikker mÄte, er dette det rette stedet Ä starte. Hvis du er interessert i hvorfor vi tok visse spesifikke teknologivalg, les videre :)

Hvorfor TypeScript?

JavaScript er vanskelig. Hvorfor legge til enda flere regler?

Vi er overbevist om at opplevelsen som TypeScript gir vil gjĂžre deg til en bedre utvikler. Man mottar umiddelbar tilbakemelding nĂ„r man skriver koden sin. De forventede datatypene er definert, og enten fĂ„r vi nyttig autofullfĂžring i kodeeditoren, eller rĂžde understrekinger som varsler oss om et problem, for eksempel nĂ„r vi prĂžver Ă„ fĂ„ tilgang til en attributt som ikke eksisterer eller nĂ„r vi prĂžver Ă„ angi en verdi av feil type. Dette lar oss identifisere og fikse feil tidlig uten Ă„ mĂ„tte feilsĂžke etterpĂ„. Enten du er helt ny pĂ„ webutvikling eller en erfaren proff, vil TypeScripts “strenghet” gi deg en mindre frustrerende, mer konsekvent opplevelse enn vanilla JS.

Typesikkerhet gjþr deg raskere. Hvis du ikke er overbevist, kan det hende du bruker TypeScript feil
↗

Hvorfor Next.js?

Vi elsker React. Det har gjort UI-utvikling tilgjengelig pÄ mÄter vi aldri kunne ha forestilt oss fÞr. Det kan ogsÄ lede utviklere ned noen vanskelige veier.

Next.js, som har noen enkle, tydelige meninger, tilbyr en svÊrt optimalisert tilnÊrming til Ä bygge applikasjoner med React. Fra ruting til API-definisjoner til bilde-rendering stoler vi pÄ at Next.js dirigerer utviklere til gode beslutninger.

Hvorfor tRPC/Prisma/Tailwind/osv?

Selv om vi Þnsker Ä holde ting sÄ enkelt som mulig, sÄ opplever vi at disse delene kan brukes i sÄ og si alle applikasjonene vi lager. create-t3-app gjÞr det enkelt for deg Ä legge til delene du trenger.

tRPC

tRPC bygger pÄ GraphQLs lÞfte om sÞmlÞs klientsideutvikling opp mot en typesikker server uten Ä generere mye boilerplate. Det er en smart utnyttelse av TypeScript som tilbyr en utrolig utvikleropplevelse.

Prisma

Prisma er for SQL det TypeScript er for JS. Det skaper en utvikleropplevelse som ikke har eksistert fĂžr. Prisma garanterer ende-til-ende typesikkerhet fra databasen til applikasjonen din ved Ă„ generere typer fra et brukerdefinert skjema som er kompatible med forskjellige databaser↗.

Prisma tilbyr et helt sett med verktĂžy↗ som gjĂžr det daglige arbeidet med databasen enklere. Spesielt Ă„ merke seg er Prisma-klienten, som utfĂžrer spĂžrringer og gjĂžr SQL sĂ„ enkelt at du knapt vil legge merke til at du bruker det. Prisma Studio er et nyttig GUI for databasen din som lar deg raskt lese og manipulere dataene dine uten Ă„ mĂ„tte skrive noen kode.

Tailwind CSS

Tailwind fþles som “zen-modus CSS”.

Tailwind lar deg lage en tydelig beskrevet applikasjon ved Ä gi deg grunnleggende byggeklosser i form av gode standardfarger, mellomrom og andre primitiver. I motsetning til komponentbiblioteker, blir du ikke holdt tilbake hvis du Þnsker Ä ta applikasjonen din til det neste nivÄet og skape noe ekstraordinÊrt og unikt.

I tillegg betyr Tailwinds “inline”-tilnĂŠrming at du ikke trenger Ă„ bekymre deg for klassenavn, mappestruktur eller andre problemer som ikke er direkte relatert til problemet du Ăžnsker Ă„ lĂžse.

NextAuth.js

Hvis du vil ha et autentiseringssystem i Next.js-applikasjonen din, er NextAuth.js en utmerket lÞsning for Ä unngÄ kompleksiteten innebÊrt i Ä bygge det selv. Den kommer med en omfattende liste over providers for Ä raskt legge til OAuth-autentisering og tilbyr adaptere for mange databaser og ORM-er.