Kirby Nuxt Starter Kit - Kirby's sample site – but rewritten headless with Nuxt 3

Overview

Logo of Kirby Nuxt Starter Kit

Kirby Nuxt Starter Kit

Kirby's sample site – but rewritten headless with Nuxt 3!
Explore the kit live »


Kirby Nuxt Starterkit

This repository is a port of the Kirby Starter Kit to Nuxt 3. The content is fetched with the nuxt-kql module from a headless Kirby instance.

This is my best practice solution to build a Nuxt 3 based frontend on top of Kirby in headless mode.

Key Features

Prerequisites

Before getting started, please make sure you have installed the recommended setup.

Setup

Make sure to install the dependencies:

pnpm install

Adapt the relevant environment variables:

# Site base URL for SEO meta data
NUXT_PUBLIC_BASE_URL=<url-of-your-website>
# Base URL of the Kirby backend
KIRBY_BASE_URL=
# Token for bearer authentication
# See https://github.com/johannschopplich/kirby-headless-starter#bearer-token
KIRBY_API_TOKEN=

Development

Start the development server on localhost:3000:

pnpm dev

Production

Build the application for production:

pnpm build

Check out the deployment documentation.

FAQ

Are There Any Drawbacks?

Data is fetched within Suspense components to ensure pre-rendered state for the user and SEO. Thus, the initial server response time is increased by about 50–100 ms for the initial KQL page query. This might be a road blocker for you. It's fine for my usecase. Still a lot faster than WordPress etc. 😉

What's Kirby?

  • getkirby.com – Get to know the CMS.
  • Try it – Take a test ride with our online demo. Or download one of our kits to get started.
  • Documentation – Read the official guide, reference and cookbook recipes.
  • Issues – Report bugs and other problems.
  • Feedback – You have an idea for Kirby? Share it.
  • Forum – Whenever you get stuck, don't hesitate to reach out for questions and support.
  • Discord – Hang out and meet the community.
  • YouTube - Watch the latest video tutorials visually with Bastian.
  • Twitter – Spread the word.
  • Instagram – Share your creations: #madewithkirby.

License

MIT License © 2022 Johann Schopplich

You might also like...
Nuxt3 starter with tailwindcss, prisma, vueuse, formkit, iconify

Nuxt3 starter with tailwindcss, prisma, vueuse, formkit, iconify

A convenient replacement for nuxt-link component when using nuxt-i18n

nuxt-i18n-link A convenient replacement for nuxt-link component when using nuxt-i18n. It is simply a replacement for this exact code: nuxt-link :to

A webpack loader i18n solution for Vue (Nuxt) with auto generated keysA webpack loader i18n solution for Vue (Nuxt) with auto generated keys

vue-i18n-loader - another webpack loader i18n solution for Vue (Nuxt) with auto generated keys. Currently under development, pull requests and suggest

This is nuxt invoice app using nuxt.js and firebase
This is nuxt invoice app using nuxt.js and firebase

Nuxt Invoice App Build Setup # install dependencies $ npm install # serve with hot reload at localhost:3000 $ npm run dev # build for production and

nuxt-fullpage is a nuxt module for creating fullscreen page scroll fast and simple.

Nuxt fullpage Nuxt module for creating fullscreen page scroll fast and simple. Demo online Table of contents Installation Usage Options Contributing I

A simple nuxt renderless component wrapper around nuxt fetch capabilities

Nuxt Fetch Component A simple nuxt renderless component wrapper around nuxt fetc

Nuxt basic - Simple Nuxt.js project

nuxt_basic Build Setup # install dependencies $ npm install # serve with hot reload at localhost:3000 $ npm run dev # build for production and launc

English-quiz-nuxt - An english quiz using nuxt

english-quiz-nuxt Live demo here Build Setup # install dependencies $ yarn insta

Frisque-nuxt-storyblok - A basic framework for integrating StoryBlok with Nuxt

🌺 Frisque StoryBlok Welcome to the Frisque StoryBlok starter kit! This is curre

Comments
  • [KQL Setup] 500 Couldn't execute KQL query

    [KQL Setup] 500 Couldn't execute KQL query

    Hej,

    thanks for your awesome starterkit! I was trying to follow the readme, but i got stucked at the part with the Bearer Token.

    I installed my kirby installation just in a subfolder of my project and use valet to run kirby. Everything works on the kirby site. Also installed the kql plugin.

    But when i run pnpm run dev i get the following error in the console:

    (node:65589) ExperimentalWarning: The Fetch API is an experimental feature. This feature could change at any time
    (Use `node --trace-warnings ...` to show where the warning was created)
    Error loading site data: 500 Couldn't execute KQL query (/api/__kql__)
    

    That also means that my localhost:3000 is empty, since nuxt cannot access to my kirby installation. is there a way to test, if KQL is correctly running in the kirby?

    I tried to deactivate the auth and access kirby.test/api/__kql__ but i get a 404 ("No route found for path: \"query\" and request method: \"GET\"",)

    Thanks in advance!

    question 
    opened by Maybach91 15
Owner
Johann Schopplich
Web designer/developer. Pharmacist prior to that.
Johann Schopplich
Fcl-nuxt-starter - FCL plugin + full stack Nuxt application starter template

How to use the Flow Client Library (FCL) with Nuxt Access the FCL instance from

Bruno Gonzales 3 Jul 18, 2022
An application / authentication starter kit frontend in Nuxt3 for Laravel Breeze.

Laravel Breeze - Nuxt3 Edition ??️ Introduction Based on the work made at breeze-next This repository is an implementation of the Laravel Breeze appli

Amr Noman 35 Jan 8, 2023
Salvia-kit dashboard template v8 with Nuxt.js

Salvia-kit Dashboard v8 Nuxt.js ?? Documentation You can see the documentation on http://localhost:3000/guides/documentation Browser Support Chrome Fi

salvia-kit 22 Nov 28, 2022
Check trending anime based on anitrendz.net site. Built using nuxt

animetrend Demo: here Build Setup # install dependencies $ npm install # serve with hot reload at localhost:3000 $ npm run dev # build for productio

Ricko Veriyanto 2 Aug 10, 2022
A static site build with Nuxt for svenjungnickel.com

svenjungnickel Build Setup # install dependencies $ npm install # serve with hot reload at localhost:3000 $ npm run dev # build for production and l

Sven Jungnickel 0 Jan 10, 2022
A static site build with Nuxt for svenjungnickel.com

svenjungnickel.com Build Setup # install dependencies $ npm install # serve with hot reload at localhost:3000 $ npm run dev # build for production a

Sven Jungnickel 0 Jan 10, 2022
Starter Template for Nuxt.js with Tailwind CSS and Axios.

Starter Template for Nuxt.js with Tailwind CSS and GraphQL Build Setup # install dependencies

Michael Owuor 1 May 12, 2022
A starter example for tdesign-vue-next with Nuxt 3.

A starter example for tdesign-vue-next with Nuxt 3.

一夏 11 Dec 10, 2022
🌰 WIP! A starter example for element-plus with nuxt3.

Element Plus with Nuxt 3 Minimal Starter ?? WIP (Work in Progress) Nuxt3 is still beta, we may need to keep updating to adapt it. Preview: https://nux

Element Plus 119 Jan 4, 2023
Starter template for parallax effects & smooth scrolling experience

Nuxt + Locomotive Scroll Starter template for parallax effects & smooth scrolling experience. Empower your Nuxt project in no time. See it in action →

Ivo Dolenc 42 Dec 11, 2022