Welcome to the Gel Next.js Starter. This starter is designed to help you get up and running with Gel and Next.js quickly. It includes a basic setup for authentication, Gel schema, and a UI to get you started. Below are some next steps to help you get up to speed.
Finish setting up Email + Password configuration
npx gel ui command or through the Gel Cloud Console and navigate to the Auth tab. Go to the "SMTP" section and add your SMTP credentials. We recommend using a service like Mailtrap for testing, and a service like Resend for production.Sign up to the platform

Extend the Gel schema
schema/default.gel file and add your own types and fields. You can start by adding a Post type with a title and content field or changing the Item type to include more fields. For example:type Item {
# ...
# Add your new fields here:
required title: str;
required content: str;
}Edit the Gel query
app/dashboard/page.tsx file and update the query to include your new fields. You can add a new field to the query or change the existing fields to include your new data.const itemsQuery = e.select(e.Item, (_item) => ({
id: true,
name: true,
created: true,
updated: true,
created_by: {
name: true,
},
// Add your new fields here
}))Add more Auth providers
npx gel ui command and navigate to the Auth tab. Go to the "Providers" section and add a new Auth provider by clicking the "Add Provider" button and following the instructions.
Test the reset password flow

Extend the "New Item" form
components/AddItem.tsx file and update the form to include your new fields. You can add a new field to the form or change the existing fields to include your new data.
Test access policies
Try deleting an item that you don't own. You shouldn't be able to delete it. You can test this by creating a new item and then trying to delete it with a different account. As a next step you can conditionally render the delete button based on the user's permissions.
Modify the Gel Auth UI callback
app/auth.tsx file and update the callback to include your new fields. You can add a new field to the callback or change the existing fields to include your new data.Deploy your app