Vulcan Next helps you build GraphQL-based applications with Next.js.
Vulcan Next provides:
- A production-grade Next.js + Apollo GraphQL boilerplate. It includes development tooling such as Cypress, Jest, Storybook, MDX... and many others.
- A GraphQL API endpoint set up with Apollo Server, so you can start coding back-end features immediately.
- Schema-based helpers and hooks to quickly generate and consume your own GraphQL API.
- Password based authentication
Join the Slack and meet Vulcan contributors
Get started with the live tutorial
Check all the features from our live app or directly on Github
Read the introductory article on FreeCodeCamp
You can't teach an old dog new tricks! Vulcan Next is the successor of "Vulcan.js", the Meteor framework from Sacha Greif. It inherits years of experience, with a modernized architecture that replaces Meteor by Next.js.
git clone -b main https://github.com/VulcanJS/vulcan-next
yarn
yarn run dev
Open http://localhost:3000 in your browser. You can then access the live docs on http://localhost:3000/docs.
When creating your own application, you'll want to host the code on your own Git repository (on GitHub, BitBucket, etc.).
Rename "origin" to "upstream", so you can use your own git repository as the main "origin", and VN official repo as "upstream".
git remote rename origin upstream
# Then do what you need to create your own origin remote
# git remote add origin <your-own-git-repository-url>
As a default, Vulcan Next will connect to a sample read-only database owned by LBKE. To create your own application, you'll want to use your own databse.
If you use Windows, you might want to either:
-
Install Ubuntu as a dual boot (virtual machine are technically fine but way slower and could lead to a poor development experience)
-
Setup the Linux subsystem in order to be able to run Docker on Windows
-
Install MongoDB using the Windows installer
It will run Mongo in your current terminal, or create and run a Mongo image if it's the first time your run the command.
Note: you should always start your database before you run the application.
yarn run start:mongo
See Docker installation instruction for Ubuntu here if you don't have Docker yet.
In .env.development
or .env.development.local
use this URI for Mongo:
MONGO_URI="mongodb://localhost:27017/vulcan-next-app"
You can then stop the server and start it again.
We advise to use MongoDB Compass to visualize your database content.
Beware: Vulcan Next is a boilerplate, the possibility to update automatically is not guaranteed. You may have to apply the updates by hand, comparing Vulcan Next latest version to your own code. Always double-check that the merge didn't break your app!.
# Get the latest version of Vulcan Next locally
git fetch upstream
# Merge to your own code (favouring your own code as a default in case of conflict)
git merge upstream/main -X ours
This project exists thanks to all the people who contribute.
Thank you to all our backers! 🙏 [Become a backer]
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]
They give time and share knowledge to support the project.
- Official Apollo example from Next
- Next Right Now (a complete Next Starter, relying on Prisma cloud solutions for the backend)
- Blitz (fullstack Next without GraphQL)
- Next Antd Graphql Starter
- Next React Graphql Apollo Bootstrap
- Next advanced starter,
- Next - Mongo (no Express, no GraphQL, just Next and Mongo)
- Next and TypeScript from the maker of next-transpile-modules
- A frontend performance oriented starter
- Bison, a full-stack Next.js starter
- Nextra, a no-code site generator with Markdown (great for blogging)
This is a Next.js project bootstrapped with create-next-app
.
To learn more about Next.js, take a look at the following resources:
- Next.js Documentation - learn about Next.js features and API.
- Learn Next.js - an interactive Next.js tutorial.
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
We use Netlify for our deployments, and so should you!
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.