NuxtVueStarter

nuxt-prisma-auth — Nuxt Starter Template

By idesignzone

A Nuxt 3 full-stack starter template with Prisma ORM, email/password authentication, email verification, password reset, i18n, and Nuxt UI components built in.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

1 previews
Author preview
Author-provided preview

Preview provided in the project README.

One original preview is available. Open the full image to inspect the design.

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-02View source

What stands out

A quick read of the recorded project description.

01

Built-in email/password authentication: registration, login, and logout flows are ready to use

02

Token-based email verification; unverified accounts are rejected at login

03

Complete forgot-password and reset-password flows that send secure tokens via email

04

Uses Prisma ORM to manage the database, with migration and Prisma Studio scripts provided

05

Integrates nuxt-i18n multilingual support, with English and Russian translation files by default

06

UI built with Nuxt UI components, with screenshots of the home page and profile page included

Template Details

This is a Nuxt 3 full-stack starter template aimed at applications that need local email/password authentication. It comes pre-wired with registration, login, logout, token-based email verification, and forgot-password and reset-password flows, using nuxt-nodemailer to send verification and reset emails. The data layer uses Prisma ORM; you need to provide your own PostgreSQL or other database and run migrations. The UI is built on Nuxt UI components, and multilingual support is provided by nuxt-i18n, with English and Russian configured by default and translation files in the locales/ directory. The project structure includes middleware, components, layouts, pages, server, prisma, and other directories, along with scripts for development, build, preview, and Prisma Studio. The README's TODO lists social login, an admin dashboard, and a role/permission system as not yet implemented, so these capabilities are outside the current version's scope.

NuxtStarter

Is it right for your project?

Use Cases

  • Quickly building a Nuxt 3 full-stack application with email registration and login
  • Using Prisma as the data layer and managing your own PostgreSQL or other database
  • Projects that need account security flows such as email verification and password reset
  • Sites serving multilingual users that require i18n support
  • Building admin or profile pages with the Nuxt UI component library

Suitable For

  • Frontend or full-stack developers familiar with Nuxt 3 and Vue
  • Starter projects that need local email/password authentication rather than third-party login
  • Teams willing to configure their own database, SMTP email service, and environment variables
  • Applications starting with English or Russian and later extensible to other languages

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    After cloning the repository, run npm install to install dependencies

  2. 2

    If Prisma is not initialized, run npx prisma init to generate the schema and .env

  3. 3

    Configure NUXT_BASE_URL, DATABASE_URL, and SMTP-related variables in .env

  4. 4

    Run npx prisma migrate dev --name init to complete the database migration

  5. 5

    Run npm run dev to start the development server and visit http://localhost:3000

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version of the public repository under the MIT license; the free scope applies to that version's code and does not imply that external services or third-party assets are free.

Must comply with when using

  • You may use, modify, commercialize, and distribute this version's code for free.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full MIT license notice.
  • The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.

Additional costs & items to verify

  • The template relies on an external SMTP email service to send verification and password reset emails; you must provide your own email account and authorization code (such as a Gmail app-specific password), otherwise registration verification and password reset flows will not work.
  • You must prepare and run your own PostgreSQL or other database, configure the connection string, and run Prisma migrations; the template itself does not include a hosted database.
  • Social login, an admin dashboard, and a role/permission system are listed as unimplemented in the README's TODO, and the current version does not provide these capabilities.
  • Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses; the code's MIT license alone is not sufficient to judge them.
  • External services such as domains, hosting, databases, payments, or AI may incur separate charges.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

EMAIL_SMTP_HOST="smtp.gmail.com"

Original README

DATABASE_URL="postgresql://user:password@localhost:5432/dbname?schema=public"

Original README

* [ ] Add social login support

Original README
https://github.com/idesignzone/nuxt-prisma-auth/blob/main/LICENSEhttps://github.com/idesignzone/nuxt-prisma-auth/blob/main/README.md

Compiled by DeepSeek based on repository license and README ·2026-10-02. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
GitHub
Documentation and maintenance reference score
Partly documented · 69 / 100
Technologies
Nuxt · Vue
Website type
Starter
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2025-05-25
Screenshot last checked
2026-10-02

No demo link is recorded. Use the repository instructions to evaluate the project locally; the screenshot alone cannot establish interactive behavior.

The catalog identifies Nuxt as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Automatically checked against source and license rules; no manual editorial review.

Inspect the recorded source material

SHA-256: ac72fe4fe2308f1644cc3553e5b24d59cea3a41718b8ea2223e758ddd6a4cd59

2026-10-02T17:23:04.648Z

Source file / repository
# Nuxt Prisma Full Stack Starter 

A full-featured Nuxt 3 starter template for building full stack applications with authentication, email verification, i18n, and UI components out of the box.

## 🔧 Tech Stack

* **Nuxt 3** — Vue-based frontend framework
* **Prisma ORM** — Database toolkit
* **Nuxt UI** — Beautiful and customizable UI components
* **nuxt-auth-utils** — Local email/password authentication
* **nuxt-i18n** — Localization and multi-language support
* **nuxt-nodemailer** — Send verification and reset password emails

## ✨ Features

* 🔐 User authentication (register, login, logout)
* ✅ Email verification via token
* 🔄 Forgot and reset password flow
* 🌍 Multi-language support with `nuxt-i18n`
* 🎨 UI components built with `nuxt-ui`
* 🧠 ORM with Prisma

## 📦 Getting Started

### 1. Clone the repo

```bash
git clone https://github.com/idesignzone/nuxt-prisma-auth.git
cd nuxt-prisma-auth
```

### 2. Install dependencies

```bash
npm install
```

### 3 Initialize Prisma (if needed)

If Prisma is not yet initialized, run:

```bash
npx prisma init
```

This will create a prisma/schema.prisma file and set up a .env file if one doesn't exist.

### 4. Set up environment variables

Create a `.env` file and set up your variables:

```env
NUXT_BASE_URL="http://localhost:3000"
DATABASE_URL="postgresql://user:password@localhost:5432/dbname?schema=public"
EMAIL_SMTP_FROM="your-email"
EMAIL_SMTP_HOST="smtp.gmail.com"
EMAIL_SMTP_PORT=465
GMAIL_SMTP_USER="your-email"
GMAIL_SMTP_PASS="your-app-password"
```

### 5. Migrate the database

```bash
npx prisma migrate dev --name init
```

### 6. Run the development server

```bash
npm run dev
```

Go to `http://localhost:3000` to see the app.

## 🧪 Available Scripts

* `npm run dev` — Starts the development server
* `npm run build` — Builds the application
* `npm run preview` — Preview production build
* `npx prisma studio` — Opens Prisma Studio for DB browsing

## 🔐 Authentication Flow

* User registers with email and password
* Verification email is sent via `nuxt-nodemailer`
* On login, unverified accounts are rejected
* Forgot password email generates secure token
* Password can be reset via tokenized URL

## 🌍 i18n Support

Configure languages in `nuxt.config.ts`:

```ts
  i18n: {
    baseUrl: process.env.NUXT_BASE_URL || 'http://localhost:3000',
    defaultLocale: "en",
    locales: [
      { code: "en", language: 'en-US', name: "English", file: "en.json" },
      { code: "ru", language: 'ru-RU', name: "Russian", file: "ru.json" },
    ],
  },
```

Translations are stored in `locales/` directory.

## 🖼️ Screenshots

### 🏠 Homepage

![Homepage](./public/screenshots/homepage.png)

### 👤 Profile Page

![Profile Page](./public/screenshots/profile.png)

## 🛠️ Folder Structure

```
.
├── middleware/
├── assets/
├── components/
├── i18n/
├── layouts/
├── pages/
├── prisma/
├── public/
├── server/
├── .env
├── app.config.ts
├── app.vue
├── nuxt.config.ts
├── LICENSE.md
├── package.json
├── README.md
└── tsconfig.json
```

## ✅ TODO

* [ ] Add social login support
* [ ] Add admin dashboard
* [ ] Add roles/permissions system

## 📄 License

MIT License © iDesignzone
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.