Next.js - Skeleton

  1. get started
  2. installation
  3. nextjs

Next.js

Install and configure Skeleton for Next.js.

WARNING: The following guide will install a pre-release version of Skeleton v3. Be aware that some features may be missing, incomplete, or non-functional at this time. Please report bugs and issues on GitHub or Discord.

1

Create a Project

Start by creating a new project using create-next-app (the Next.js CLI):

Terminal window
npm create next-app@latest my-skeleton-app --typescript --tailwind --eslint
cd my-skeleton-app
2

Install Skeleton

Install the Skeleton core and Svelte component packages.

Terminal window
npm i -D @skeletonlabs/skeleton@next @skeletonlabs/skeleton-react@next
4

Configure Tailwind

Open tailwind.config in the root of your project and make the following changes:

tailwind.config
import type { Config } from 'tailwindcss';
import { skeleton, contentPath } from "@skeletonlabs/skeleton/plugin";
import * as themes from "@skeletonlabs/skeleton/themes";
export default {
content: [
"./src/pages/**/*.{js,ts,jsx,tsx,mdx}",
"./src/components/**/*.{js,ts,jsx,tsx,mdx}",
"./src/app/**/*.{js,ts,jsx,tsx,mdx}",
contentPath(import.meta.url, 'react')
],
theme: {
extend: {},
},
plugins: [
skeleton({
// NOTE: each theme included will increase the size of your CSS bundle
themes: [ themes.cerberus, themes.rose ]
})
]
} satisfies Config
5

Set Active Theme

Open /src/app/layout.tsx, then set the data-theme attribute on the body tag to define the active theme.

layout.tsx
<body data-theme="cerberus">...</body>

Done

Start the dev server using the following command.

Terminal window
npm run dev