Skip to content

typesense/showcase-guitar-chords-search-nuxt-js

Repository files navigation

🎸 Instant Guitar Chord Positions Search, powered by Typesense - Nuxt3 SSR

Tech Stack

  • Typesense
  • Nuxt 3 with vue-instantsearch server-side rendering (SSR)
  • Typescript
  • Cypress

All make for a blazingly fast search experience 🔥🔥🔥

The guitar chord dataset & chord svg generation is from tombatossals which contains 2141 chord shapes of 552 chords.

Project Structure

/
├── scripts/
│   ├── data/
│   │   ├── guitar.json
│   │   └── schema.json
│   └── indexTypesense.ts # script that index data from guitar.json into typesense server
├── components/
│   └── UI components...
├── plugins/
│   └── vue-instantsearch.ts # vue-instantsearch setup
├── utils/
│   └── typesense.ts # typesense-instantsearch-adapter config
├── app.vue # guitar chords search
└── nuxt.config.ts # typesense-instantsearch-adapter build configure

Development

To run this project locally, make sure you have docker and nodejs, install the dependencies and start the dev server:

Installation

git clone https://github.com/typesense/showcase-guitar-chords-search-nuxt-js.git

cd showcase-guitar-chords-search-nuxt-js

npm i

Start typesense server

npm run start:typesense # or: docker compose up

Index data into typesense

npm run index:typesense

Start the dev web app

npm run dev

Open http://localhost:3000 to see the app ✌️

Deployment

  • Set env variables required in env.example to point the app to the Typesense Cluster