https://github.com/thecodeorigin/nuxt-template
A Nuxt 3 theme as an installable Nuxt 3 layer ✨✨✨ Nuxt 3, UnoCSS, Drizzle ORM with Nitro server engine
https://github.com/thecodeorigin/nuxt-template
layer nuxt nuxt3 typescript unocss vue vue3
Last synced: 9 months ago
JSON representation
A Nuxt 3 theme as an installable Nuxt 3 layer ✨✨✨ Nuxt 3, UnoCSS, Drizzle ORM with Nitro server engine
- Host: GitHub
- URL: https://github.com/thecodeorigin/nuxt-template
- Owner: thecodeorigin
- Created: 2021-07-22T15:10:25.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2025-04-01T16:18:24.000Z (9 months ago)
- Last Synced: 2025-04-01T17:38:16.148Z (9 months ago)
- Topics: layer, nuxt, nuxt3, typescript, unocss, vue, vue3
- Language: Vue
- Homepage: https://thecodeorigin-nuxt.vercel.app
- Size: 14.3 MB
- Stars: 30
- Watchers: 3
- Forks: 9
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Nuxt 3 template
[](#contributors-)
Nuxt 3 template is a opinionated template for Nuxt 3 project. It includes the following features:
- [UnoCSS](https://unocss.com) for utility-first CSS
- [Vuetify](https://vuetifyjs.com) for component library
- [Nuxt i18n](https://i18n.nuxtjs.org) for internationalization
- [Nuxt Auth](https://auth.sidebase.io) for authentication
- [Drizzle ORM](https://orm.drizzle.team) for Database communication
- [CASL](https://casl.js.org) for Access Control
- [Firebase Notification](https://firebase.google.com) for push notification
## Getting Started
### Prerequisites
- [PNPM](https://pnpm.io) - Fast, disk space efficient package manager
- [Node.js 20+](https://nodejs.org) - Recommend to be installed via PNPM standalone using `pnpm env use --global`
### Installation
1. Clone the repository
```bash
git clone git@github.com:thecodeorigin/nuxt-template.git
```
2. Install dependencies
```bash
pnpm install
```
3. Prepare the environment
Copy the `.env.example` file to `.env` and fill in the necessary information
```bash
cp .env.example .env
```
4. Prepare the Database with Docker
You can use a remote database and fill in all the environment variables in the `.env` file. Or you can use the provided docker-compose file to start a local database.
> Please be careful with your configured environment variables, you can accidentally execute the database commands on your production database.
```bash
pnpm db:start
pnpm db:migrate
pnpm db:seed
```
> Please checkout the `server/db/seeds` folder to review all the seed data, especially the `users.seed.ts` file to get the default user credentials.
You can stop or reset the database with the following commands:
```bash
# Stop the database
pnpm db:stop
# Reset the database
pnpm db:reset
```
5. Run the project
```bash
pnpm dev
```
### Usage with Doppler
You can use Doppler to manage your environment variables. To do this, you need to install the Doppler CLI and authenticate with your account.
1. Install the Doppler CLI
Please follow the instructions on the [official Doppler documentation](https://docs.doppler.com/docs/install-cli) to install the Doppler CLI.
2. Authenticate with Doppler
```bash
doppler login
```
3. Select the project from Doppler
```bash
doppler setup
```
4. Run the project with Doppler
> Please be careful with your configured environment variables, you can accidentally execute the database commands on your production database.
```bash
pnpm with-env dev
```
## Contribution
Thank you to all the people who already contributed to the Nuxt Template project!

Rim (Y Nguyen)
💻

Nguyễn Đức Truyền
🚧

Trịnh Huy Nam
🚧

HaoNguyen-Ron
🚧

Minh Dong
🚧
## License
[MIT](https://opensource.org/licenses/MIT)
Copyright (c) 2022-present, Nguyen Huu Nguyen Y
## Contributors ✨
Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!