# Radionica3D — Modern 3D Printing Service [![Vue 3](https://img.shields.io/badge/Frontend-Vue%203-42b883?style=flat-square&logo=vue.js)](https://vuejs.org/) [![FastAPI](https://img.shields.io/badge/Backend-FastAPI-009688?style=flat-square&logo=fastapi)](https://fastapi.tiangolo.com/) [![SQLite](https://img.shields.io/badge/Database-SQLite-003b57?style=flat-square&logo=sqlite)](https://www.sqlite.org/) [![TailwindCSS](https://img.shields.io/badge/Styling-Tailwind-38bdf8?style=flat-square&logo=tailwind-css)](https://tailwindcss.com/) **Radionica3D** is a full-featured web platform for a 3D printing service, designed to bridge the gap between clients and creators. It handles everything from model analysis and automated pricing to real-time communication and fiscal reporting. > "Мы печатаем — и делаем как надо." (We print — and we do it right.) ## 🚀 Key Features - **Instant Quote**: Upload STL/3D models and get instant price estimates based on volume and material. - **True Chat**: Real-time bidirectional communication via WebSockets for seamless order adjustments. - **Advanced User Panel**: Track all your orders, download invoices, and manage your 3D printing projects in one place. - **Admin Dashboard**: Comprehensive order management, customer support, portfolio management, and warehouse tracking. - **Fiscal Compliance**: Integrated electronic fiscalization for Montenegrin tax regulations (EFI). - **Nuances & Guidelines**: Automated education for users about 3D printing technicalities (anisotropy, layers, etc.). ## 🏗 Architecture The project follows a modern decoupled architecture: - **Frontend**: Vue 3 (Vite), Pinia, TailwindCSS, Lucide Icons. - **Backend**: FastAPI (Python 3.10+), SQLAlchemy, Redis (for pings/presence), JWT Authentication. - **Database**: SQLite (Development) / PostgreSQL (Optional Production). For more details, see [Architecture Overview](docs/architecture.md). ## 🛠 Getting Started ### Prerequisites - Node.js 18+ - Python 3.10+ - Git ### Installation 1. Clone the repository: ```bash git clone https://git.loky.pw/git/radionica3d.git ``` 2. Set up the frontend: ```bash npm install npm run dev ``` 3. Set up the backend: ```bash cd backend python -m venv .venv source .venv/bin/activate # or .venv\Scripts\activate on Windows pip install -r requirements.txt python main.py ``` ## 📖 Documentation Detailed documentation is available in the `docs/` directory: - [General Overview](docs/README.md) - [Architecture & Design](docs/architecture.md) - [Deployment Guide](docs/deployment.md) - [Admin Tutorial](docs/admin_tutorial.md) - [Localization Workflow](docs/development.md#localization) ## 📄 License © 2024 Radionica3D. All rights reserved.