# MedReport README

## Prerequisites

```json
"node": ">=20.0.0",
"pnpm": ">=9.0.0"
```

## Project structure

```text
/ app - pages
/ components - custom components, helper components that not provided by any package. Place to extend an redefine components from packages
/ config - bunch of configs, that are provided by starter kit.
/ content - (temporary?) - to be removed when cleaned all dependencies
/ fonts - (temporary) - contains fonts, should be relocated to another place (maybe public)
/ lib - diffirent libs, services, utils
    - fonts.ts - project fonts setup, which becomes available as a global css variable
    / i18n - translations/localization setup
/ public - public assets
    / locales - translations under a corresponding local - at a specific namespace
/ styles - all styles of the projects, including tailwind variable setup
    - global.css - Global styles for the entire application, a place where should apply variables to global selectors
    - shadcn-ui.css - A place where all global variables are defined for color, sizes and etc, that are used in theme.css. Variables defined here and in theme.css are available as tailwindcss property-class
    - theme.css - more specific variables,  available as tailwindcss property-class
    - makerkit.css - Makerkit-specific global styles
    - markdoc.css - Styles for Markdoc Markdown files.
    -
/ supabase - primary supabase
/ tooling - a workspace package, used for generation packages in node_modules and provides global links for its data. The most important is typescript config
/ utils
```

## Migration from old structure

```bash
pnpm clean
pnpm i
```

## Adding new dependency

```bash
pnpm add <pacakge-name> -w
```

## Supabase

Start supabase in docker

```bash
npm run supabase:start
```

Link your local supabase with a supabase project

```bash
npm run supabase:deploy
```

After editing supabase tables/functions etc update migration files

```bash
npm run supabase:db:diff
```

To update database types run:

```bash
npm run supabase:typegen:app
```
