Initial commit: WaMarket MVP

Marketplace inversée (Next.js 16 App Router + Supabase Cloud) : auth,
schéma + RLS, publication de besoins avec upload d'images, feed avec
filtres, offres, acceptation via RPC, messagerie temps réel,
dashboards, et Dockerfile pour déploiement Coolify.
This commit is contained in:
2026-07-30 14:33:17 +00:00
commit af81124d48
82 changed files with 16824 additions and 0 deletions
+27
View File
@@ -0,0 +1,27 @@
import * as z from "zod";
export const SignupFormSchema = z.object({
fullName: z.string().trim().min(2, { message: "2 caractères minimum." }),
email: z.string().trim().email({ message: "Adresse email invalide." }),
password: z
.string()
.min(8, { message: "8 caractères minimum." })
.regex(/[a-zA-Z]/, { message: "Doit contenir au moins une lettre." })
.regex(/[0-9]/, { message: "Doit contenir au moins un chiffre." }),
});
export const LoginFormSchema = z.object({
email: z.string().trim().email({ message: "Adresse email invalide." }),
password: z.string().min(1, { message: "Mot de passe requis." }),
});
export type FormState =
| {
errors?: {
fullName?: string[];
email?: string[];
password?: string[];
};
message?: string;
}
| undefined;