Skip to content

Files

Latest commit

Oct 28, 2022
0ca77b4 · Oct 28, 2022

History

History

frontend

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Sep 22, 2022
Aug 20, 2022
Oct 10, 2022
Oct 28, 2022
Sep 24, 2022
Oct 14, 2022
Oct 10, 2022
Jul 24, 2022
Aug 27, 2022
Oct 10, 2022
Oct 10, 2022
Oct 15, 2022
Oct 15, 2022
Jul 17, 2022
Aug 25, 2022
Sep 26, 2022
Oct 11, 2022

Matchy Frontend

Read the contributing guide first


Table of contents

Prerequisites

Setup

  1. Fork the repository
  2. Clone your fork
  3. Open the frontend folder in your IDE
  4. npm install
  5. npm run dev



Recommended Tooling

I recommend using Visual Studio Code with

As for settings, I personally am a fan of those "inlay hints".
I also totally recommend using a decent browser such as Firefox or a Chromium browser with

Used Libraries

The most important ones are

We are also using

  • Vite - a speedy Vue.js framework



Recommended IDE Setup

VSCode + Volar (and disable Vetur) + TypeScript Vue Plugin (Volar).



Customize configuration

See Vite Configuration Reference.



Project Setup

npm install





Page Structure

Vuetify wraps a lot of standard component to facilitate usage with the framework, therefore a couple of rules should be followed when creating pages:

  • The main content should be wrapped in <v-main>. This gives it an offset to compensate for the Header.
  • Generally when wrapping many elements inside another element <v-container> should be used as a wrapper.
  • For grid-layout use <v-row> and <v-col>.
  • Footers should use the <v-footer app> component with the app prop set to true.
    • Do not abuse footers for positioning. They are semantic elements that convey meaning.
  • Most common style options are available as utility-classes. Check Vuetify's Styles and animations

Re-generate Supabase Types

Read here about Supabase Typescript types

npm run type-gen

Compile and Hot-Reload for Development

npm run dev

Development and Testing on the Local Network

npm run start-network

and then visit the sites from other devices. Make sure to use https.

Type-Check, Compile and Minify for Production

npm run build

Run Unit Tests with Vitest

npm run test:unit

Lint with ESLint

npm run lint