Skip to content

Latest commit

Β 

History

History
86 lines (70 loc) Β· 2 KB

File metadata and controls

86 lines (70 loc) Β· 2 KB

⚠️ This project was created to upload and manage photos of participants of the Caorle Film Festival 2025

πŸš€ Tech Stack

πŸ–ΌοΈ Frontend

  • βš›οΈ React
  • #️⃣ Typescript
  • ⚑ Vite
  • πŸ”— Gaxios/Fetch for API calls

πŸ› οΈ Backend

  • 🌐 Express.js
  • πŸ—„οΈ Multer for file upload
  • 🌍 CORS cross-origin
  • 🌱 i18next for multilanguage

πŸ—„οΈ Database

  • πŸͺΆ SQLite3

πŸ“Έ Photo Filtering

  • πŸ” Google AI Vision

A modern, lightweight, and easily deployable stack!


πŸ“¦ Features

  • Photo upload and moderation system
  • Multilanguage support (EN, IT, DE, ES) with i18n
  • Fast development workflow with Vite and React
  • RESTful API backend with Express.js
  • File management and directory listing
  • SQLite3 database for lightweight storage
  • Image filtering with Google AI Vision

πŸ“ Folder Structure

CaorleFilmSnap-V2/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ backend/
β”‚   β”‚   β”œβ”€β”€ routes/
β”‚   β”‚   β”œβ”€β”€ middleware/
β”‚   β”‚   └── uploads/
β”‚   └── frontend/
β”‚       β”œβ”€β”€ src/
β”‚       └── public/
β”œβ”€β”€ data/
β”œβ”€β”€ locales/
β”œβ”€β”€ package.json
└── README.MD

⚑ Quick Start

  1. Clone the repository
    git clone <repo-url>
    cd CaorleFilmSnap-V2
  2. Install dependencies
    npm install
  3. Start development servers
    npm start
    This will launch both backend and frontend concurrently.

πŸ“ Usage

  • Access the frontend at http://localhost:5173
  • Backend API runs at http://localhost:3001
  • Upload photos via the provided UI or API endpoints

🌍 Localization

  • Translation files are located in locales/
  • Easily add new languages by creating a new translation file

πŸ›‘οΈ Deployment

  • The stack is designed for easy deployment on any Node.js-compatible host
  • For production, configure environment variables and use a process manager (e.g., PM2)

Contributions and feedback are welcome!