# Socialize Socialize is an organization-owned, workspace-based workflow application for social media content review, revision, approval, and publication readiness. It is not a public social network. The product is for internal teams, providers, and client approvers coordinating content work before publication. ## Monorepo - Backend: .NET 10 Web API in `backend/src/Socialize.Api` - Backend tests: `backend/tests/Socialize.Tests` - Frontend: Vue 3 + Vite + Vuetify + Pinia in `frontend` - API contract: OpenAPI snapshot in `shared/openapi` - Deployment: Docker Compose + Caddy - Agentic workflow: specs, task files, and prompt templates under `docs` ## Local Development Terminal 1: ```bash ./scripts/start-infrastructure.sh ./scripts/dev-backend.sh ``` Terminal 2: ```bash ./scripts/dev-frontend.sh ``` Frontend: ```txt http://localhost:5173 http://:5173 ``` Backend: ```txt http://localhost:5080 http://:5080 ``` Swagger UI: ```txt http://localhost:5080/api ``` ## Update Frontend API Types The backend must be running first. ```bash ./scripts/update-openapi.sh ``` This writes: ```txt shared/openapi/openapi.json frontend/src/api/schema.d.ts ``` ## Docker Compose ```bash docker compose up --build ``` Then open: ```txt http://localhost:8080 http://:8080 ``` For preprod deployment, configure the `POSTGRES_PASSWORD`, `RESEND_API_KEY`, `RESEND_FROM_EMAIL`, and `JWT_SIGNING_KEY` Gitea secrets. The deploy workflow writes the remote `.env` file and syncs `deploy/compose.yml` before running the server deploy script. Use the raw Resend API key value for `RESEND_API_KEY`, without a `Bearer ` prefix. ## Solution ```bash dotnet build backend/Socialize.slnx dotnet test backend/Socialize.slnx ``` ## Frontend Build ```bash cd frontend npm run build ``` ## Database Diagram Start PostgreSQL, then generate a local schema diagram: ```bash ./scripts/generate-db-diagram.sh ``` The script writes an HTML viewer, SVG, PNG, and Graphviz source under: ```txt .artifacts/db-diagrams/ ``` Use `DATABASE_URL`, `PGPASSWORD`, or `~/.pgpass` to provide local database credentials. When using the repository infrastructure script, the diagram script can read from the running `socialize-postgres` container directly. ## Agentic Workflow Start here: ```txt docs/AGENTIC_WORKFLOW.md ``` Use feature specs, task files, and prompt templates instead of asking agents to work from vague chat history.