npm package: @lastbrain/module-auth
Description: Module d'authentification complet pour LastBrain avec Supabase
Latest version: 2.0.31

# 📦 Module auth

> Module @lastbrain/module-auth

## 📋 Informations

- **Nom du package**: `@lastbrain/module-auth`
- **Slug**: `module-auth`
- **Type**: Module LastBrain

## 📄 Pages Disponibles

### Pages Publiques

- **GET** `/signin` - SignInPage
- **GET** `/signup` - SignUpPage
- **GET** `/reset-password` - ResetPassword
- **GET** `/confirm` - ConfirmPage
- **GET** `/auth-code-error` - AuthCodeErrorPage

### Pages Protégées (Auth)

- **GET** `/folder` - FolderPage
- **GET** `/reglage` - ReglagePage
- **GET** `/profile` - ProfilePage

### Pages Admin

- **GET** `/users` - AdminUsersPage

## 🔌 API Routes

### `/api/auth/signin`

**Méthodes supportées**: POST

### `/api/auth/signup`

**Méthodes supportées**: POST

### `/api/public/set-session`

**Méthodes supportées**: POST

### `/api/public/add-welcome-bonus`

**Méthodes supportées**: POST

### `/api/public/reset-password`

**Méthodes supportées**: POST

### `/api/public/callback`

**Méthodes supportées**: GET

### `/api/auth/profile`

**Méthodes supportées**: GET, PUT, PATCH

### `/api/auth/me`

**Méthodes supportées**: GET

### `/api/auth/account/email-change`

**Méthodes supportées**: POST

### `/api/auth/account/reset-password`

**Méthodes supportées**: POST

### `/api/admin/users`

**Méthodes supportées**: GET

## 🗄️ Base de Données

### Tables

#### `user_profil`

```tsx
<TableStructure
  tableName="user_profil"
  title="user_profil"
  description="Table user_profil du module auth"
/>
```

#### `user_address`

```tsx
<TableStructure
  tableName="user_address"
  title="user_address"
  description="Table user_address du module auth"
/>
```

#### `user_notifications`

```tsx
<TableStructure
  tableName="user_notifications"
  title="user_notifications"
  description="Table user_notifications du module auth"
/>
```

#### `global_addons`

```tsx
<TableStructure
  tableName="global_addons"
  title="global_addons"
  description="Table global_addons du module auth"
/>
```

#### `user_global_addons`

```tsx
<TableStructure
  tableName="user_global_addons"
  title="user_global_addons"
  description="Table user_global_addons du module auth"
/>
```

### Migrations

- `20251112000000_user_init.sql`
- `20251112000001_auto_profile_and_admin_view.sql`
- `20251112000002_sync_avatars.sql`
- `20251124000001_add_get_admin_user_details.sql`
- `20251127100000_rename_body_to_message.sql`
- `20260120150001_add_user_storage.sql`
- `20260122131200_add_global_addons_system.sql`
- `20260123100000_enable_vector_extension.sql`

## 📦 Installation

```bash
pnpm lastbrain add-module auth
pnpm build:modules
```

### Appliquer les migrations

```bash
cd apps/votre-app
supabase migration up
```

## 💡 Utilisation

<!-- 📝 Section à compléter par l'auteur du module -->

### Exemple d'utilisation

```tsx
// Importez les composants depuis le module
import { SignInPage } from "@lastbrain/module-auth";

// Utilisez-les dans votre application
<SignInPage />;
```

### Configuration

<!-- Ajoutez ici les détails de configuration spécifiques -->

## ⚠️ Danger Zone

La suppression du module supprimera toutes les pages, routes API et migrations associées. **Cette action est irréversible.**

```bash
pnpm lastbrain remove-module auth
pnpm build:modules
```