Skip to content

aiudalabs/dsagent-ui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DataScience Agent

A data science analytics platform with an AI-powered workspace UI.

Project Structure

lovable-analytics/
├── apps/
│   ├── api/                    # FastAPI backend (Python 3.11)
│   │   ├── app/
│   │   │   ├── core/           # Config, logging
│   │   │   ├── routers/        # API endpoints
│   │   │   └── services/
│   │   └── tests/
│   │
│   └── ui/                     # Remix/React workspace UI (Bolt.new fork)
│       ├── app/
│       │   ├── components/     # UI components
│       │   ├── lib/
│       │   │   ├── api/        # Backend API client
│       │   │   ├── events/     # Event stream handling
│       │   │   └── stores/     # State management
│       │   └── routes/         # Page routes
│       └── UPSTREAM.md         # Attribution to Bolt.new
│
├── packages/
│   └── contracts/
│       ├── schemas/            # JSON Schemas (source of truth)
│       ├── python/contracts/   # Pydantic models
│       └── typescript/src/     # TypeScript types
│
├── Makefile                    # Task runner
└── README.md

Prerequisites

  • Python 3.11+
  • Node.js 18+
  • pnpm (for UI)

Local Development Setup

1. Install Dependencies

# Install all dependencies
make install

# Or install individually:
cd apps/api && pip install -r requirements.txt -r requirements-dev.txt
cd apps/ui && pnpm install

2. Environment Configuration

# Copy environment files
cp apps/api/.env.example apps/api/.env

3. Start Development Servers

# Start both API and UI
make dev

# Or start individually:
make dev-api   # API on http://localhost:8000
make dev-ui    # UI on http://localhost:5173

API Endpoints

Endpoint Method Description
/health GET Health check
/docs GET OpenAPI documentation
/v1/projects GET, POST List/create projects
/v1/projects/{id} GET Get project details
/v1/projects/{id}/runs GET, POST List/create runs
/v1/runs/{id} GET Get run details
/v1/runs/{id}/events GET Get run events (SSE)
/v1/runs/{id}/artifacts GET List run artifacts
/v1/artifacts/{id} GET Get artifact content
/v1/artifacts/{id}/download GET Download artifact
/v1/datasets GET, POST List/create datasets

UI Routes

Route Description
/ Redirects to /projects
/login Login page (stub)
/projects Projects list
/projects/:id Project workspace

Workspace Features

The project workspace includes:

  • Left Sidebar: Tabs for Chat, Datasets, Artifacts, Runs
  • Main Panel: Artifact viewer (JSON/YAML/Markdown)
  • Right Panel: Run timeline with live events

Available Commands

Command Description
make dev Start API + UI in development mode
make dev-api Start only the API server
make dev-ui Start only the UI dev server
make install Install all dependencies
make lint Run all linters
make format Format all code
make test Run all tests
make build-ui Build UI for production
make clean Clean build artifacts

UI Attribution

The UI is based on Bolt.new by StackBlitz, licensed under MIT. See apps/ui/UPSTREAM.md for details.

Development Workflow

  1. Backend Development: Make changes to apps/api, endpoints auto-reload
  2. Frontend Development: Make changes to apps/ui, Vite HMR auto-updates
  3. Schema Changes: Update JSON schemas in packages/contracts/schemas/
  4. Type Generation: Run make build-types after schema changes

License

Private - All rights reserved (except UI which retains MIT license from upstream).

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published