# io8 Code Master Agent - Customized for This Project

## Project-Specific Instructions

## PROJECT BREAKDOWN - Simple Notes Taking App - 2025-10-09 04:57:00

### 1. Project Overview
*   **Goal:** Develop a simple, responsive web application for creating, viewing, editing, and deleting notes, leveraging a client-server architecture with persistent storage.
*   **Target Audience:** Individuals needing a straightforward digital notepad for personal use.

### 2. Core Functional Requirements (User Stories - Initial Draft)
*   As a user, I want to create a new note with a title and content, so I can jot down my thoughts.
*   As a user, I want to view a list of all my notes, so I can easily browse them.
*   As a user, I want to view the details of a specific note, so I can read its full content.
*   As a user, I want to edit an existing note's title and content, so I can update my information.
*   As a user, I want to delete a note, so I can remove outdated information.
*   As a user, I want notes to be saved persistently, so I don't lose my data.

### 3. Non-Functional Requirements
*   **Performance:** Fast load times for notes list and individual note views.
*   **Usability:** Intuitive user interface, easy navigation for CRUD operations.
*   **Reliability:** Notes data should be consistently saved and retrieved without corruption.
*   **Scalability:** Initial design should be simple, but the architecture should allow for future enhancements (e.g., user authentication, tags, search).
*   **Security:** Basic data validation and sanitization for note content.
*   **Maintainability:** Clear code structure, well-documented components, adherence to io8 directory standards.

### 4. High-Level Architecture
*   **Frontend:** Single-Page Application (SPA) for user interaction, residing in the `/frontend/` directory (e.g., built with Angular, React, or Vue).
*   **Backend:** RESTful API for managing notes, residing in the `/backend/` directory (e.g., built with Node.js/Express, Python/Flask/Django, Spring Boot).
*   **Database:** A relational database for persistent storage of notes (e.g., PostgreSQL, SQLite), managed by the backend.

### 5. Key Milestones
*   **M1: Backend Foundation (API & DB Persistence):** Core CRUD API endpoints for notes, integrated with a database for data persistence.
*   **M2: Frontend Core (View & Create):** User interface for displaying a list of notes and a form for creating new notes, consuming the backend API.
*   **M3: Frontend Enhancements (Edit & Delete):** User interface for editing and deleting existing notes.
*   **M4: Local Development & Initial Deployment Setup:** Dockerization of frontend and backend, `docker-compose` for local orchestration, basic deployment configuration.
*   **M5: Testing & Refinement:** Comprehensive testing, bug fixing, and UX/UI polish.

### 6. Technical Considerations (Preliminary)
*   **Frontend Framework:** To be selected by `io8architect` and `io8developer`, but will be built from scratch within `/frontend/` or integrated into the `cloned base project/` if the base project template (e.g., Angular Clarity) is deemed suitable and lightweight enough for a "simple" app.
*   **Backend Framework:** To be selected by `io8architect` and `io8developer`, will be built within `/backend/`.
*   **Database:** Choice between SQLite (for simplicity) or PostgreSQL (for scalability) will be made by `io8architect`.
*   **Deployment:** Containerized deployment using Docker, orchestrated with Docker Compose for local development, and potentially a cloud provider for production (to be determined by `io8devops`).

### 7. Constraints & Risks
*   **Simplicity Requirement:** Avoid feature creep; maintain focus on core note-taking functionality.
*   **Base Project Integration:** Ensure new application code in `/backend/` and `/frontend/` does not conflict with or unnecessarily bloat the `cloned base project/` content, which primarily houses `.sureai/` and might contain a boilerplate if not directly used for the notes app.
*   **Dependency Management:** Manage dependencies effectively to avoid conflicts and maintain a lean application.
*   **Timeframe:** To be defined in the project plan by `io8pm` and `io8sm`.

---


## IMPLEMENTATION PLAN - Simple Notes Taking App - 2025-10-09 04:57:00

### 1. Phase 1: Planning & Backend Foundation (Weeks 1-2)
*   **Responsible Agents:** `io8analyst`, `io8architect`, `io8pm`, `io8developer`, `io8devops`
*   **Objectives:** Finalize requirements, design backend architecture, implement core API with database persistence, and prepare initial Docker configurations.
*   **Tasks:**
    *   **T1.1 (io8analyst):** Detail functional requirements, create user stories, and define data models for notes (append to `requirements_document.md`).
    *   **T1.2 (io8architect):** Select backend technology stack (e.g., Node.js/Express, Python/Flask, Spring Boot) and database (e.g., PostgreSQL, SQLite). Design API endpoints and database schema (append to `architecture_document.md`, `tech_stack_document.md`).
    *   **T1.3 (io8developer):** Initialize backend project within the `/backend/` directory, set up development environment.
    *   **T1.4 (io8developer):** Implement database connection and initial schema definition.
    *   **T1.5 (io8developer):** Develop RESTful API endpoints for creating, retrieving, updating, and deleting notes. Integrate with the database.
    *   **T1.6 (io8devops):** Create `Dockerfile.backend` for containerizing the backend service (generate/update `Dockerfile.backend`).
    *   **T1.7 (io8pm):** Establish initial project timeline and key milestones (append to `project_plan.md`).

### 2. Phase 2: Frontend Core & API Integration (Weeks 3-4)
*   **Responsible Agents:** `io8analyst`, `io8architect`, `io8developer`, `io8devops`
*   **Objectives:** Develop the core frontend UI for note management and integrate it with the backend API.
*   **Tasks:**
    *   **T2.1 (io8architect):** Design frontend UI/UX mockups for notes list, detail view, and note form (append to `architecture_document.md`).
    *   **T2.2 (io8developer):** Select frontend technology stack (e.g., React, Vue, Angular) and initialize frontend project within the `/frontend/` directory.
    *   **T2.3 (io8developer):** Develop components for displaying a list of notes, and a form for creating new notes.
    *   **T2.4 (io8developer):** Implement API service layer in the frontend to communicate with the backend API.
    *   **T2.5 (io8developer):** Integrate notes list and creation components with the backend API.
    *   **T2.6 (io8devops):** Create `Dockerfile.frontend` for containerizing the frontend application (generate/update `Dockerfile.frontend`).

### 3. Phase 3: Enhancements, Orchestration & Testing (Weeks 5-6)
*   **Responsible Agents:** `io8developer`, `io8devops`, `io8pm`, `io8sm`
*   **Objectives:** Implement edit/delete functionality, setup local multi-service orchestration, and conduct comprehensive testing.
*   **Tasks:**
    *   **T3.1 (io8developer):** Develop frontend components and logic for editing and deleting existing notes.
    *   **T3.2 (io8developer):** Implement client-side routing for navigating between notes list, detail, and form views.
    *   **T3.3 (io8devops):** Create `docker-compose.yml` to orchestrate backend, frontend, and database services for local development (generate/update `docker-compose.yml`).
    *   **T3.4 (io8devops):** Define initial deployment configuration (e.g., environment variables, CI/CD hooks) in `deployment_config.yml` (generate/update `deployment_config.yml`).
    *   **T3.5 (io8developer):** Write unit and integration tests for both backend API and frontend components.
    *   **T3.6 (io8sm):** Facilitate sprint review, gather feedback, and create/update `tasks_list.md` and `sprint_plan.md` based on progress and remaining work.
    *   **T3.7 (io8pm):** Oversee final testing, quality assurance, and project sign-off.

### 4. Resource Allocation
*   **io8analyst:** Primary during Phase 1 for requirements. Consults during Phase 2 for UI/UX alignment.
*   **io8architect:** Primary during Phase 1 for system design and tech stack. Consults during Phase 2 for frontend architecture.
*   **io8developer:** Primary resource for Phases 1, 2, and 3 for all code implementation and testing.
*   **io8devops:** Primary during Phases 1 and 3 for Dockerization and deployment configurations.
*   **io8pm:** Oversees project progress, risks, and timeline across all phases.
*   **io8sm:** Manages task breakdown and sprint planning, ensures workflow adherence.

### 5. Dependencies
*   Successful completion of `io8directory_structure` agent's task to define project layout.
*   `io8analyst` outputs are critical for `io8architect` and `io8developer`.
*   `io8architect` outputs are critical for `io8developer`.
*   `io8developer` code is a prerequisite for `io8devops` deployment configurations.

---


## Base Agent Prompt Reference

This agent is based on the standard io8codermaster agent with project-specific customizations above.
Refer to the base io8codermaster agent prompt for general principles and workflow instructions.
