chore: moving towards agentic development
This commit is contained in:
125
README.md
125
README.md
@@ -1,88 +1,101 @@
|
||||
# Socialize
|
||||
|
||||
Socialize is a workflow application for social media content review, revision, approval, and publication readiness.
|
||||
Socialize is a workspace-based workflow application for social media content review, revision, approval, and publication readiness.
|
||||
|
||||
It is not a public social network. The current product direction is a workspace-based review tool for internal teams, providers, and client approvers.
|
||||
It is not a public social network. The product is for internal teams, providers, and client approvers coordinating content work before publication.
|
||||
|
||||
## Repository Structure
|
||||
## Monorepo
|
||||
|
||||
- `backend/`: ASP.NET Core `net10.0` API with FastEndpoints, EF Core, PostgreSQL, and modular bounded contexts.
|
||||
- `frontend/`: Vue 3 + Vite + Vuetify + Pinia SPA.
|
||||
- `docs/`: product, planning, and archived project documentation.
|
||||
|
||||
## Current Backend Modules
|
||||
|
||||
- `Identity`
|
||||
- `Workspaces`
|
||||
- `Clients`
|
||||
- `Projects`
|
||||
- `ContentItems`
|
||||
- `Assets`
|
||||
- `Comments`
|
||||
- `Approvals`
|
||||
- `Notifications`
|
||||
- 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
|
||||
|
||||
### Backend
|
||||
|
||||
Prerequisites:
|
||||
|
||||
- .NET 10 SDK
|
||||
- Docker
|
||||
|
||||
Start infrastructure:
|
||||
Terminal 1:
|
||||
|
||||
```bash
|
||||
cd backend
|
||||
./scripts/start-infrastructure.sh
|
||||
./scripts/dev-backend.sh
|
||||
```
|
||||
|
||||
Run the API:
|
||||
Terminal 2:
|
||||
|
||||
```bash
|
||||
cd backend
|
||||
dotnet run --project Socialize.Api.csproj
|
||||
./scripts/dev-frontend.sh
|
||||
```
|
||||
|
||||
Local backend URL:
|
||||
Frontend:
|
||||
|
||||
- `http://localhost:5000`
|
||||
- Swagger UI: `http://localhost:5000/api`
|
||||
```txt
|
||||
http://localhost:5173
|
||||
http://<this-machine-lan-ip>:5173
|
||||
```
|
||||
|
||||
### Frontend
|
||||
Backend:
|
||||
|
||||
Prerequisites:
|
||||
```txt
|
||||
http://localhost:5080
|
||||
http://<this-machine-lan-ip>:5080
|
||||
```
|
||||
|
||||
- Node.js / npm
|
||||
Swagger UI:
|
||||
|
||||
The frontend reads runtime values from:
|
||||
```txt
|
||||
http://localhost:5080/api
|
||||
```
|
||||
|
||||
- `frontend/.env.development`
|
||||
- `frontend/.env.production`
|
||||
- `frontend/src/config.js`
|
||||
## Update Frontend API Types
|
||||
|
||||
Run the frontend:
|
||||
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://<this-machine-lan-ip>:8080
|
||||
```
|
||||
|
||||
## Solution
|
||||
|
||||
```bash
|
||||
dotnet build backend/Socialize.slnx
|
||||
dotnet test backend/Socialize.slnx
|
||||
```
|
||||
|
||||
## Frontend Build
|
||||
|
||||
```bash
|
||||
cd frontend
|
||||
npm install
|
||||
npm run dev
|
||||
npm run build
|
||||
```
|
||||
|
||||
Local frontend URL:
|
||||
## Agentic Workflow
|
||||
|
||||
- `http://localhost:5173`
|
||||
Start here:
|
||||
|
||||
## Validation
|
||||
```txt
|
||||
docs/AGENTIC_WORKFLOW.md
|
||||
```
|
||||
|
||||
- Backend: `cd backend && dotnet build Socialize.Api.csproj`
|
||||
- Frontend: `cd frontend && npm run build`
|
||||
|
||||
## Docs
|
||||
|
||||
- [docs/README.md](/home/jbourdon/repos/social-media/docs/README.md)
|
||||
- [docs/product/vision.md](/home/jbourdon/repos/social-media/docs/product/vision.md)
|
||||
- [docs/product/glossary.md](/home/jbourdon/repos/social-media/docs/product/glossary.md)
|
||||
- [docs/constraints.md](/home/jbourdon/repos/social-media/docs/constraints.md)
|
||||
- [AGENTS.md](/home/jbourdon/repos/social-media/AGENTS.md)
|
||||
Use feature specs, task files, and prompt templates instead of asking agents to work from vague chat history.
|
||||
|
||||
Reference in New Issue
Block a user