From 97df43ce9110205acb52c13bc0f16b3533a6f4f3 Mon Sep 17 00:00:00 2001 From: Nighthawk Date: Fri, 5 Sep 2025 06:51:17 -0400 Subject: [PATCH] Added pyproject.toml, updated todo.md --- pyproject.toml | 43 +++++++++++++++++++++++++++++++++++++++++++ todo.md | 8 ++++++++ 2 files changed, 51 insertions(+) create mode 100644 pyproject.toml diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..cfbf135 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,43 @@ +# =================================================================== +# VDM - Project Configuration File +# =================================================================== +# This file defines the project, its metadata, and its dependencies +# for modern Python packaging tools like uv and pip. + +[build-system] +requires = ["setuptools"] +build-backend = "setuptools.build_meta" + +[project] +name = "vdm-server" +version = "0.1.0" +description = "A multiplayer, AI-driven storytelling game server." +requires-python = ">=3.11" + +# These are the core dependencies, equivalent to the old requirements.txt +# They will install the CPU-only version of PyTorch by default. +dependencies = [ + "fastapi", + "uvicorn", + "pydantic-settings", + "orjson", + "httpx", + "chromadb", + "sentence-transformers", + "chonkie[st]", + "kokoro", + "torch", + "torchaudio", + "passlib[bcrypt]", + "PyYAML", + "rich", +] + +# This section defines optional features that can be installed. +[project.optional-dependencies] +# The 'gpu' extra will install the CUDA-enabled version of PyTorch for +# significantly better performance on NVIDIA GPUs. +gpu = [ + "torch", + "torchaudio", +] \ No newline at end of file diff --git a/todo.md b/todo.md index c6fb30b..1441d3f 100644 --- a/todo.md +++ b/todo.md @@ -18,3 +18,11 @@ This document tracks major functional, operational, and architectural improvemen - **[ ] Create a `Dockerfile`:** Define the environment for the VDM server, including the Python version, dependency installation from `requirements.txt`, and the command to run the server. - **[ ] Create a `docker-compose.yml`:** Write a Compose file to make it trivial to start the entire application stack (the VDM server and potentially its databases) with a single `docker-compose up` command. This dramatically simplifies setup for new developers and production environments. + +## 3. Modern Frontend Framework Migration + +**Goal:** Rebuild the frontend using a modern JavaScript framework to improve scalability, maintainability, and the developer experience. + +- **[ ] Choose a Framework:** Evaluate and select a framework. **React** (with Vite for the build tool) is a strong contender due to its vast ecosystem and component-based architecture, which is a perfect fit for our UI. +- **[ ] Component-Based Refactoring:** Break down the existing HTML and JavaScript into reusable components (e.g., `ChatLog`, `PlayerList`, `MessageInput`). +- **[ ] State Management:** Replace the current manual state object with a dedicated state management library like **Zustand** or **Redux Toolkit** for a more robust and predictable UI. \ No newline at end of file