README.md 2.7 KB

Radionica3D — Modern 3D Printing Service

Vue 3 FastAPI SQLite TailwindCSS

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.

🛠 Getting Started

Prerequisites

  • Node.js 18+
  • Python 3.10+
  • Git

Installation

  1. Clone the repository:

    git clone https://git.loky.pw/git/radionica3d.git
    
  2. Set up the frontend:

    npm install
    npm run dev
    
  3. Set up the backend:

    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:

📄 License

© 2024 Radionica3D. All rights reserved.