https://blitzjs.com/ Announcing Flightcontrol - Easily Deploy Blitz.js and Next.js to AWS Blitz home page DocumentationShowcaseReleasesSwagDeploy with Flightcontrol Search The Missing Fullstack Toolkit for Next.js Ship. Fast. Blitz picks up where Next.js leaves off, providing battle-tested libraries and conventions for shipping and scaling world wide applications. Learn to Blitz GitHub createProject.tspages/projects/new.tsx 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 // ---- ON THE SERVER ---- // app/projects/mutations/createProject.ts import { resolver } from "@blitzjs/rpc" import db from "db" import * as z from "zod" // This provides runtime validation + type safety export const CreateProject = z .object({ name: z.string(), }) // resolver.pipe is a functional pipe export default resolver.pipe( // Validate the input data resolver.zod(CreateProject), // Ensure user is logged in resolver.authorize(), // Perform business logic async (input) => { const project = await db.project.create({ data: input }) return project } ) Typesafe API Layer Build and iterate on features 10x faster with Blitz RPC than REST, GraphQL, or vanilla API routes. Read and write data from the client with full typesafety and without messing with HTTP or serialization. Authentication Powerful, flexible, and battle tested authentication and authorization for Next.js. You get more control with simpler APIs than alternatives. Easily add social third party integrations like Google, Github, and Auth0. Conventions & Codegen Set up a new app in 2 mins instead of 2 weeks. Everything will be set up for you including auth, user signup, forgot password, and your form library of choice. Top Videos Everything You Need For Production Apps Built for Monoliths and Services You can manage everything from the database to your frontend all inside a single app. Only one thing to develop. Only one thing to deploy. Or not. Your choice. Loose Opinions The out-of-the-box experience guides you on a path perfect for most applications. But when you need to go off the beaten path, you are totally free to do so. And nearly everything is pluggable. For example, we don't mandate which styling or form libraries you use. Convention over Configuration Blitz does all the boring set up and configuration for you. The common project structure and architectural patterns make it easy to move from one Blitz app to another and immediately feel at home. Easy to Start, Easy to Scale Easy for beginners and easy to migrate existing Next.js apps to Blitz. Easy to scale in all forms: lines of code, number of people working in the codebase, and code execution. --------------------------------------------------------------------- Blitz CodeSandbox Example Codesandbox placeholderCodesandbox placeholder Click to Open in New Tab We Love Our Community! [svg] Garrison SnellingGarrison Snelling [svg] Peter NyariPeter Nyari [svg] ImmortalinImmortalin [svg] Akira BaruahAkira Baruah [svg] robertrischrobertrisch [svg] Felipe MilaniFelipe Milani [svg] Oscar SirventOscar Sirvent [svg] Rahul RavindranRahul Ravindran [svg] kivikivi [svg] Santhosh B. AppanSanthosh B. Appan [svg] Andrea RizzelloAndrea Rizzello [svg] Zack HobsonZack Hobson [svg] Pedro Enrique Palau IsaacPedro Enrique Palau Isaac [svg] Benjamin BenderBenjamin Bender [svg] matamatanotmatamatanot [svg] SteffanSteffan [svg] Daniel KempnerDaniel Kempner [svg] GaneshManiGaneshMani [svg] gstrangergstranger [svg] Nick WarrenNick Warren [svg] Matt SichtermanMatt Sichterman [svg] Yash ThakkarYash Thakkar [svg] Joaquin Bravo ContrerasJoaquin Bravo Contreras [svg] Peter ShihPeter Shih [svg] Tim ReynoldsTim Reynolds [svg] Mukul KolpeMukul Kolpe [svg] Sebastian HoitzSebastian Hoitz [svg] Daniel AlmaguerDaniel Almaguer [svg] tylertyler [svg] Brian LiuBrian Liu Our community is warm, safe, inclusive, and fun! Please read our Code of Conduct. Join our Discord Community We are all in this together, from the youngest to the oldest. We are all more similar than we are different. We love to work together. We invite you to help make Blitz the best JavaScript application layer we've ever had! Learn How to Contribute Architecture Diagram Architecture diagram --------------------------------------------------------------------- Everything End-to-End From the Database to the Frontend Authentication & Authorization Blitz authentication is super easy and secure. Works with any identity provider, including self-hosted username and password and third-parties like Auth0. Database Agnostic You can use any database you want. Prisma is the default database client, but you can remove that and use anything else like Fauna or DynamoDB. Recipes One command to install code and/or packages into your blitz app. Examples: `blitz install tailwind` or `blitz install chakra-ui`. Recipes can be created by anyone. Backend Architecture Blitz is set up for server intensive tasks like sending emails, cron jobs, background processing, generating PDFs, etc. Currently we have minimal backend guides, but are working on developing more patterns and adding more docs. First Class TypeScript Support Blitz is built with TypeScript and the Blitz data layer is fully end-to-end typesafe. All types are completely static without needing a separate type generation process! Code Scaffolding Blitz code scaffolding is great for both prototyping and for building real apps! You can override templates with your own. Our Sponsors Your financial contributions help ensure Blitz continues to be developed and maintained! We have monthly sponsorship options starting at $5/month. Support Blitz So What Should I Do Now? Try Blitz in Under 5 Mins Join Discord Want to receive the latest news and updates from the Blitz team? Sign up for our newsletter! [ ] Docs All DocsGet StartedHow To Contribute Community DiscordForum DiscussionsTwitterShowcase Other Deploy with FlightcontrolGitHubWikiSwag Copyright (c) 2022 Brandon Bayer and Blitz.js Contributors