Skip to content

borhen68/studio-frametale-

Repository files navigation

FrameTale Studio - Professional Photobook Design Platform

A modern frontend application for professional photobook design with Fabric.js canvas integration and local storage.

πŸš€ Quick Start

Prerequisites

  • Node.js 18+
  • Git

1. Clone and Setup

git clone <repository-url>
cd frametale-studio
npm install

2. Start Development Server

npm run dev

Frontend will run on: http://localhost:5173

πŸ—οΈ Architecture

Frontend (React + Vite)

  • Framework: React 18 with Vite
  • Canvas: Fabric.js for advanced design tools
  • UI: Material-UI with custom glassmorphism effects
  • State: React Context for project management
  • Styling: Tailwind CSS + custom modern effects

Local Storage

  • Templates: Browser localStorage for template management
  • Projects: Local canvas data persistence
  • Settings: User preferences and configurations

🎨 Features

Design Studio

  • βœ… Professional canvas with Fabric.js
  • βœ… Advanced typography tools
  • βœ… Shape library and image editing
  • βœ… Layer management system
  • βœ… Page navigation for photobooks
  • βœ… Real-time preview and zoom controls
  • βœ… Keyboard shortcuts and performance monitoring

Local Data Management

  • βœ… Canvas data persistence (localStorage)
  • βœ… Template management system (local)
  • βœ… Project and page management (local)
  • βœ… Auto-save functionality (local)
  • βœ… Export system (JSON, canvas data)

Professional Tools

  • βœ… Cut lines and print guides
  • βœ… Rulers and grid system
  • βœ… Performance optimization
  • βœ… Responsive design
  • βœ… Modern glassmorphism UI

πŸ“ Project Structure

frametale-studio/
β”œβ”€β”€ src/                          # Frontend source
β”‚   β”œβ”€β”€ components/               # React components
β”‚   β”œβ”€β”€ pages/                    # Main pages
β”‚   β”œβ”€β”€ hooks/                    # Custom React hooks
β”‚   β”œβ”€β”€ contexts/                 # React contexts
β”‚   β”œβ”€β”€ services/                 # API services
β”‚   β”œβ”€β”€ styles/                   # CSS and styling
β”‚   └── utils/                    # Utility functions
β”œβ”€β”€ public/                       # Static assets
└── docs/                         # Documentation
β”‚   β”‚   β”‚   β”œβ”€β”€ projects/         # Project management
β”‚   β”‚   β”‚   β”œβ”€β”€ canvas/           # Canvas operations
β”‚   β”‚   β”‚   β”œβ”€β”€ idml-parser/      # IDML processing
β”‚   β”‚   β”‚   β”œβ”€β”€ auth/             # Authentication
β”‚   β”‚   β”‚   └── file-storage/     # File management
β”‚   β”‚   β”œβ”€β”€ common/               # Shared interfaces
β”‚   β”‚   └── config/               # Configuration
β”‚   └── storage/                  # File storage
└── docs/                         # Documentation

πŸ”§ Configuration

Environment Variables

Backend (.env)

MONGODB_URI=mongodb://localhost:27017/frametale-studio
JWT_SECRET=your-secret-key
PORT=3001
UPLOAD_PATH=./storage
CORS_ORIGIN=http://localhost:5174

Frontend

VITE_API_URL=http://localhost:3001/api/v1

🎯 Current Status

βœ… Completed

  • Full-stack architecture setup
  • Professional design studio interface
  • Backend API with MongoDB integration
  • Canvas data persistence
  • Template management system
  • IDML parser foundation
  • Auto-save functionality
  • Modern UI with glassmorphism effects

🚧 In Progress

  • Authentication system (prepared but not active)
  • Advanced IDML processing
  • Real-time collaboration
  • Advanced export features

πŸ“‹ Planned

  • User management and roles
  • Cloud storage integration
  • Advanced template marketplace
  • Print-ready PDF generation
  • Mobile responsive design

πŸ§ͺ Testing the Application

  1. Start the development server (frontend on :5173)
  2. Test local storage - Add shapes/text and see them save automatically
  3. Canvas persistence - Refresh the page and see your work restored
  4. Template management - Create and manage templates locally

πŸ”Œ Key Features

Canvas Data Format

{
  "version": "5.3.0",
  "objects": [...],
  "background": "#ffffff",
  "metadata": {
    "pageType": "cover",
    "dimensions": { "width": 816, "height": 1056, "unit": "pt" },
    "resolution": 300,
    "colorProfile": "CMYK"
  }
}

Template Structure

{
  "name": "Classic Photobook",
  "category": "photobook",
  "type": "cover",
  "dimensions": { "width": 816, "height": 1056, "unit": "pt" },
  "fabricCanvas": { ... },
  "placeholders": [ ... ]
}

πŸš€ Deployment

Development

npm run dev

Production

npm run build && npm run preview

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Test thoroughly
  5. Submit a pull request

πŸ“„ License

This project is proprietary software for FrameTale Studio.


🎨 FrameTale Studio - Professional photobook design made simple.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors