# Directory Structure for 'ecom app' Project

This document outlines the standard and customized directory structure for the 'ecom app' project, adhering to the io8 project guidelines. This structure is designed to organize backend, frontend, documentation, and configuration files efficiently, building upon a cloned base project.

## Project Root Overview

The project root (`./`) contains core configuration files, environment-specific deployments, and separate directories for backend and frontend code. It also includes the `.io8project/` metadata directory and the `cloned base project/` which houses the initial codebase and the `.sureai/` agent-specific outputs.

```
./
├── .io8project/
│   ├── .state.json                    # Manages the current state and progress of tasks for the ecom app.
│   └── project_metadata.json          # Stores overall project metadata and configuration for the ecom app.
├── cloned base project/               # The repository cloned as the base for the ecom app project.
│   ├── .sureai/                       # io8 Agent outputs, intermediate files, and project documents.
│     ├── uploads/                     # Storage for documents, images, and other assets uploaded by agents, e.g., for requirements gathering for ecom app.
│     ├── .directory_structure_ecom_app_20251015_121220.md  # This document detailing the project's directory structure (generated by io8Directory Structure Agent).
│     ├── .bmad_agent_ecom_app_20251015_121220.md          # Business Model and Analysis Document output by the BMAD agent for ecom app.
│     ├── .analyst_agent_ecom_app_20251015_121220.md       # Analyst Agent's specific outputs and logs for ecom app.
│     ├── .architect_agent_ecom_app_20251015_121220.md     # Architect Agent's specific outputs and logs for ecom app.
│     ├── .pm_agent_ecom_app_20251015_121220.md            # Project Manager Agent's specific outputs and logs for ecom app.
│     ├── .sm_agent_ecom_app_20251015_121220.md            # Scrum Master Agent's specific outputs and logs for ecom app.
│     ├── .developer_agent_ecom_app_20251015_121220.md     # Developer Agent's specific outputs and logs for ecom app.
│     ├── .devops_agent_ecom_app_20251015_121220.md        # DevOps Agent's specific outputs and logs for ecom app.
│     ├── .bmad_*.md                     # Generic placeholder for additional BMAD agent outputs (hidden) for ecom app.
│     ├── .analyst_*.md                  # Generic placeholder for additional Analyst agent outputs (hidden) for ecom app.
│     ├── .architect_*.md                # Generic placeholder for additional Architect agent outputs (hidden) for ecom app.
│     ├── .developer_*.md                # Generic placeholder for additional Developer agent outputs (hidden) for ecom app.
│     ├── .devops_*.md                   # Generic placeholder for additional DevOps agent outputs (hidden) for ecom app.
│     ├── .pm_*.md                       # Generic placeholder for additional PM agent outputs (hidden) for ecom app.
│     ├── analysis_document.md           # High-level analysis of the ecom app (created by Analyst Agent).
│     ├── requirements_document.md       # Detailed functional and non-functional requirements for the ecom app (created by Analyst Agent).
│     ├── architecture_document.md       # Architectural design and decisions for the ecom app (created by Architect Agent).
│     ├── tech_stack_document.md         # Document detailing the technology stack chosen for the ecom app (created by Architect Agent).
│     ├── prd_document.md                # Product Requirements Document for the ecom app (created by PM Agent).
│     ├── project_plan.md                # Overall project plan and roadmap for the ecom app (created by PM Agent).
│     ├── tasks_list.md                  # Comprehensive list of tasks for the ecom app, managed by Scrum Master and updated by Developer.
│     └── sprint_plan.md                 # Current sprint planning and backlog for the ecom app (created by Scrum Master Agent).
│   └── ...                            # Other files/directories from the original cloned base project.
├── backend/                           # Contains all backend source code, services, and related files for the ecom app.
│   ├── src/                           # Source code for backend services (e.g., API, database interactions, business logic).
│   ├── tests/                         # Unit and integration tests for backend components.
│   ├── config/                        # Backend-specific configuration files (e.g., database connection, environment settings).
│   ├── package.json (or equivalent)   # Dependency management for Node.js, Python, Java etc.
│   └── ...                            # Other backend-specific files like README.md, .gitignore.
├── frontend/                          # Contains all frontend source code, assets, and related files for the ecom app.
│   ├── src/                           # Source code for the user interface (e.g., React components, Vue.js files, HTML, CSS, JS).
│   ├── public/                        # Static assets like index.html, favicon, images, fonts.
│   ├── tests/                         # Unit and E2E tests for frontend components.
│   ├── components/                    # Reusable UI components.
│   ├── pages/                         # Page-specific components/views.
│   ├── assets/                        # Images, fonts, stylesheets not bundled by framework.
│   ├── package.json (or equivalent)   # Dependency management for frontend (e.g., Node.js).
│   └── ...                            # Other frontend-specific files like README.md, .gitignore.
├── deployment_config.yml              # Root-level configuration file for deployment pipelines and environments specific to the ecom app.
├── Dockerfile.backend                 # Dockerfile for building the backend service image of the ecom app.
├── Dockerfile.frontend                # Dockerfile for building the frontend application image of the ecom app.
├── docker-compose.yml                 # Docker Compose file for defining and running multi-container Docker applications (backend, frontend, database, etc.) for the ecom app.
└── nginx.conf                         # Nginx configuration file for routing, proxying, and serving static assets for the ecom app.
```

## Customizations for 'ecom app'

-   **Backend (`backend/`):** Expected to contain services for user authentication, product catalog management, shopping cart logic, order processing, payment integration, and possibly inventory management.
-   **Frontend (`frontend/`):** Expected to contain user interface elements for product display, search, user profiles, shopping cart, checkout flow, and order history.
-   **Configuration (`nginx.conf`):** Specifically included to handle reverse proxying, load balancing, and static file serving for the e-commerce application, often required for robust web applications.
-   **Agent Output Filenames:** Timestamped agent output files within `cloned base project/.sureai/` are explicitly named `_ecom_app_{timestamp}.md` to reflect the specific project, using the provided timestamp `20251015_121220`.