Skip to content

Vekeryk/sliderium

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sliderium

AI-powered presentation editor with slide-by-slide editing and professional export capabilities.

🚀 Quick Start

Prerequisites

  • Node.js 20+
  • PNPM (package manager)

Setup

# Install PNPM
npm install -g pnpm

# Clone and install
git clone <repository-url>
cd sliderium
pnpm install

# Approve native module builds
pnpm approve-builds

# Run database migrations
pnpm migration:run

# Start development servers
pnpm dev

Access: Frontend at http://localhost:5173, Backend at http://localhost:5001

⚡ Core Features

  • 🤖 AI Generation: Claude-powered presentation creation
  • ✏️ Slide-by-Slide Editing: Individual Monaco editors with real-time MARP preview
  • 🖼️ Advanced Image Editor: Internet search with smart loading and fallback
  • 📤 Multiple Export Formats: PDF, PowerPoint (.pptx), and HTML
  • 💾 Data Persistence: SQLite database with TypeORM migrations
  • 🔧 Professional Editor: Monaco with MARP syntax highlighting
  • 🔔 Smart Notifications: react-hot-toast for user feedback

📋 Commands

# Development
pnpm dev                 # Start both frontend and backend
pnpm dev:frontend        # Frontend only (Vite dev server)
pnpm dev:backend         # Backend only (NestJS)

# Building
pnpm build               # Build all workspaces
pnpm build:shared        # Build shared library
pnpm build:frontend      # Build React app
pnpm build:backend       # Build NestJS app

# Database
pnpm migration:run       # Apply pending migrations
pnpm migration:generate  # Generate new migration
pnpm migration:revert    # Rollback last migration

# Production
pnpm start               # Start production server
./deploy.sh              # Deploy to production

🏗️ Architecture

Monorepo Structure (PNPM Workspaces):

sliderium/
├── apps/
│   ├── frontend/        # React + Vite + TypeScript
│   └── backend/         # NestJS + TypeORM + SQLite
├── libs/
│   └── shared/          # Shared types and utilities
└── configs/             # Production configurations

Tech Stack:

  • Frontend: React 18, Vite, TailwindCSS, shadcn/ui, Monaco Editor, react-hot-toast
  • Backend: NestJS, TypeORM, better-sqlite3, Anthropic Claude API, DuckDuckGo Images API
  • Export: @marp-team/marp-cli for PDF/PowerPoint generation

🌍 Environment Setup

Development

Create .env in project root:

# Required for AI features
ANTHROPIC_API_KEY=your_anthropic_api_key

# Optional configurations
DATABASE_URL=file:./dev.db
PORT=5001

Production

See DEPLOYMENT.md for complete production setup guide including:

  • Raspberry Pi deployment
  • Nginx configuration
  • PM2 process management
  • SSL/TLS setup

🗄️ Database

TypeORM with SQLite:

  • Automatic migrations in development
  • Manual migrations in production for safety
  • Entity definitions in apps/backend/src/entities/
  • Migration files in apps/backend/src/migrations/

🚀 Production Deployment

Quick Production Setup:

# Build everything
pnpm build

# Run migrations
pnpm migration:run

# Start with PM2
pm2 start ecosystem.config.js

# Deploy with script
./deploy.sh

See DEPLOYMENT.md for complete Raspberry Pi production guide.

🔧 Development Notes

  • Frontend: Uses Vite proxy to route /api requests to backend
  • Backend: NestJS with global /api prefix
  • Database: SQLite with TypeORM, better-sqlite3 driver
  • Exports: Server-side PDF/PowerPoint generation via marp-cli
  • Image Search: DuckDuckGo Images API with smart loading and fallback
  • Notifications: react-hot-toast for user feedback and error handling
  • Auth: Optional basic authentication for production

Sliderium - Modern presentation editing powered by AI ⚡


🚩 If you... 🔢 Then bump... 💡 Example
❌ Broke compatibility (e.g., removed or changed API) MAJOR v2.0.0 ← from v1.4.3
➕ Added a new feature, no breaking changes MINOR v1.5.0 ← added export feature
🐛 Fixed a bug, typo, or minor improvement PATCH v1.4.4 ← fixed crash on login

About

A revolutionar presentation editor that transforms how you work with MARP presentations.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published