Logo Lanfrica

salesio/vonana

Domaine:

digital infrastructure

Type de record:

software
Créateur:
sal
Hôte:
VONANA — People. Communities. Business. Social and commerce platform for Mozambique (Milestone 1). # VONANA **Pessoas. Comunidades. Negócios.** Fundação técnica do Milestone 1 da plataforma VONANA — uma rede social, de comunidades e de comércio para Moçambique. Este repositório contém apenas a base (autenticação, perfil, shell da aplicação e design system); as funcionalidades sociais, marketplace e de comunidades serão construídas em milestones futuros sobre esta fundação. ## 1. Visão geral do projeto - **Framework:** Next.js 14 (App Router) + TypeScript - **Estilos:** Tailwind CSS, com um sistema de design centralizado (`src/config/brand.ts`) - **Base de dados:** PostgreSQL via Prisma ORM - **Autenticação:** Auth.js (NextAuth v4) com credenciais (email/username + palavra-passe) - **Validação:** Zod + React Hook Form - **Idioma:** Português de Moçambique (arquitectura pronta para i18n futuro) ## 2. Requisitos - Node.js 20 ou superior - npm 10 ou superior - Docker Desktop (para correr o PostgreSQL localmente) - Git ## 3. Instalar dependências ```bash npm install ``` ## 4. Configurar o PostgreSQL localmente (Docker) O `docker-compose.yml` inclui um serviço `db` pronto a usar: ```bash docker compose up -d db ``` Isto inicia um PostgreSQL 16 em `localhost:5432` com: - utilizador: `vonana` - password: `vonana_dev_password` - base de dados: `vonana` Se preferir, pode usar uma instância PostgreSQL já instalada localmente — basta ajustar `DATABASE_URL` no passo seguinte. ## 5. Variáveis de ambiente Copie o ficheiro de exemplo e edite os valores: ```bash cp .env.example .env ``` Gere um `NEXTAUTH_SECRET` seguro: ```bash openssl rand -base64 32 ``` (No Windows/PowerShell, pode gerar um valor aleatório equivalente, ou usar o Git Bash.) ## 6. Executar as migrações do Prisma Com o PostgreSQL a correr e o `.env` configurado: ```bash npx prisma migrate dev --name init ``` Isto cria as tabelas (`users`, `accounts`, `sessions`, `verification_tokens`, `password_reset_tokens`) e gera o Prisma Client. ## 7. Iniciar o servidor de desenvolvimento ```bash npm …

Languages