# Radionica 3D Project Documentation

Welcome to the official documentation for the Radionica 3D platform. This document provides a high-level overview of the project, its goals, and the technology stack.

## Overview
Radionica 3D is a full-stack web application designed for a 3D printing studio based in Montenegro. It allows users to:
- Upload 3D models (STL, OBJ, etc.).
- Receive quotes and track order progress.
- Interact with administrators via a real-time bidirectional WebSocket chat.
- View and acknowledge technical 3D printing nuances (anisotropy, shrinkage, etc.).
- Manage cookie consent for anonymous visitor tracking.
- Place new orders directly from the unified Orders Dashboard.
- View a portfolio of previous works.
- Manage reviews and blog posts.

The platform follows a "Trust-based" business model: Pay on delivery, trust in every layer.

## Technology Stack
The project is built using modern, robust technologies:

### Frontend
- **Framework**: [Vue 3](https://vuejs.org/) (Composition API)
- **Build Tool**: [Vite 6](https://vitejs.dev/)
- **State Management**: [Pinia](https://pinia.vuejs.org/)
- **Styling**: [Tailwind CSS](https://tailwindcss.com/)
- **Routing**: [Vue Router](https://router.vuejs.org/)
- **Localization**: `vue-i18n` with a custom split/merge system.
- **Animations**: `@vueuse/motion`
- **3D Rendering**: [Three.js](https://threejs.org/) for STL previews.

### Backend
- **Framework**: [FastAPI](https://fastapi.tiangolo.com/) (Python 3.11+)
- **Database**: SQLite (managed via raw SQL and custom migration scripts).
- **Authentication**: JWT-based (JSON Web Tokens).
- **Communication**: WebSockets for real-time order chat.
- **Background Tasks**: Telegram integration for admin notifications.

## Documentation Navigation
- [Architecture](./architecture.md): Detailed system design and folder structure.
- [Frontend Guide](./frontend.md): UI components, state, and localization.
- [Backend Guide](./backend.md): API routes, database schema, and services.
- [Development Guide](./development.md): How to run locally, add features, and test.
- [Admin Tutorial](./admin_tutorial.md): Step-by-step guide to extending the Admin Panel.
- [Deployment Guide](./deployment.md): Production setup and build scripts.
