NuxtJS |
NextJS |
Angular 15 |
Vanilla JS |
Astro |
SolidJS |
Remix |
Sveltekit |
Qwik |
React Native
- Typesense
- Astro
- Typescript
- Cypress
- typesense-instantsearch-adapter & instantsearch.js
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.
/
├── cypress/
│ └── e2e tests...
├── scripts/
│ ├── data/
│ │ ├── guitar.json
│ │ └── schema.json
│ └── indexTypesense.ts # script that index data from guitar.json into typesense server
├── src/
│ ├── components/
│ │ └── Heading.astro
│ ├── layouts/
│ │ └── Layout.astro
│ ├── pages/
│ │ └── index.astro # guitar chords search
│ ├── utils/
│ │ ├── reactChord.ts # draw guitar chord svg
│ │ └── typesense.ts # typesense-instantsearch-adapter config
│ └── styles/
│ └── ...
└── package.json
To run this project locally, make sure you have docker and nodejs, install the dependencies and run the local server:
Installation
git clone https://github.com/typesense/showcase-guitar-chords-search-astro.git
cd showcase-guitar-chords-search-astro
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:4321 to see the app ✌️
Set env variables to point the app to the Typesense Cluster
PUBLIC_TYPESENSE_SEARCH_ONLY_API_KEY=xxx
PUBLIC_TYPESENSE_HOST=xxx.typesense.net
PUBLIC_TYPESENSE_PORT=443
PUBLIC_TYPESENSE_PROTOCOL=https