xgi / irisub

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Collaborative Subtitle Editor

Irisub is a modern subtitle editor with real-time collaboration. Create and edit subtitles for videos from YouTube, Vimeo, or your own device, and share your projects with others to make edits together in real-time.

Try it out: irisub.com


Development

Prerequisites:

# Install package dependencies
pnpm install

# Start database and Firebase emulator containers
docker-compose up --build --detach

# Perform initial database migrations
pnpm exec nx run gateway:migrate-db

# Start API and web app servers
pnpm exec nx run-many --target=serve

This is an Nx monorepo, and Nx is used for all lint/build/serve tasks. You can run them using the CLI commands (such as the ones above), but I recommend using the VSCode extension: https://nx.dev/core-features/integrate-with-editors.

The serve command supports hot reloading on code changes for both the API server and web app.

Stack

This project consists of 2 major components (plus a Postgres DB).

  • web
    • React web application
    • Compiled and deployed statically with Vite
  • gateway
    • Express.js API server
    • Kysely is used for Postgres queries and migrations
    • Built and deployed as irisub-gateway Docker image

Firebase is used for authentication. A Docker container running the Firebase emulator is available for development.

Credits

License

MIT License

About

License:MIT License


Languages

Language:TypeScript 97.1%Language:JavaScript 2.1%Language:CSS 0.3%Language:HTML 0.2%Language:Dockerfile 0.2%Language:SCSS 0.1%