The next-generation file converter. Open source, fully local* and free forever.
Go to file
Realmy f7943382d4 Remove lockfile gitignore 2025-02-08 19:00:49 +01:00
.vscode feat: dark mode (#7) 2024-11-13 19:33:16 +00:00
patches feat: conversion page redesign (#21) 2024-11-14 20:02:06 +00:00
src Merge branch 'jovannmc/redesign' into nightly 2025-02-08 20:11:51 +03:00
static VERT logo update (again) 2025-02-07 17:12:36 +01:00
.dockerignore feat: add dockerfile & docker compose configuration (#1) 2024-11-14 08:44:18 +00:00
.env.example feat: add nightly label 2024-11-15 09:55:58 +00:00
.gitignore Remove lockfile gitignore 2025-02-08 19:00:49 +01:00
.prettierignore feat: initial commit 2024-11-11 13:16:06 +00:00
.prettierrc feat: initial commit 2024-11-11 13:16:06 +00:00
Dockerfile feat: add dockerfile & docker compose configuration (#1) 2024-11-14 08:44:18 +00:00
LICENSE Create LICENSE 2024-11-12 19:01:37 +01:00
README.md update nightly (#33) 2025-02-08 17:04:41 +00:00
bun.lock Remove lockfile gitignore 2025-02-08 19:00:49 +01:00
docker-compose.yml feat: add dockerfile & docker compose configuration (#1) 2024-11-14 08:44:18 +00:00
eslint.config.js feat: initial commit 2024-11-11 13:16:06 +00:00
package.json some bug fixes 2025-02-05 16:21:44 +03:00
postcss.config.js feat: initial commit 2024-11-11 13:16:06 +00:00
svelte.config.js make vert CSR 2025-01-13 20:37:47 +03:00
tailwind.config.ts implement toasts 2025-02-08 20:07:43 +03:00
tsconfig.json feat: initial commit 2024-11-11 13:16:06 +00:00
vite.config.ts feat: homepage 2024-11-15 20:22:11 +00:00

README.md

VERT's logo

VERT.sh

VERT is a file conversion utility that uses WebAssembly to convert files on your device instead of a cloud. Check out the live instance at vert.sh.

VERT is built in Svelte and TypeScript.

Features

  • Convert files directly on your device using WebAssembly *
  • No file size limits
  • Supports multiple file formats
  • User-friendly interface built with Svelte

* Non-local video conversion is planned, but the daemon will be easily self-hostable to maintain privacy and fully local functionality.

Getting Started

Prerequisites

Make sure you have the following installed:

Installation

# Clone the repository
git clone https://github.com/yourusername/vert.git
cd vert
# Install dependencies
bun i

Running Locally

To run the project locally, run bun dev.

This will start a development server. Open your browser and navigate to http://localhost:5173 to see the application.

Building for Production

Before building for production, make sure you create a .env file in the root of the project with the following content:

PUB_HOSTNAME=vert.sh # change to your domain
PUB_PLAUSIBLE_URL=https://plausible.example.com # can be empty if not using Plausible

To build the project for production, run bun run build

This will build the site to the build folder. You can then start the server with bun ./build/index.js and navigate to http://localhost:3000 to see the application.

With Docker

Clone the repository, then build a Docker image with:

$ docker build -t not-nullptr/vert \
	--build-arg PUB_HOSTNAME=vert.sh \
	--build-arg PUB_PLAUSIBLE_URL=https://plausible.example.com .

You can then run it by using:

$ docker run --restart unless-stopped -p 3000:3000 -d --name "vert" not-nullptr/vert

We also have a docker-compose.yml file available. Use docker compose up if you want to start the stack, or docker compose down to bring it down. You can pass --build to docker compose up to rebuild the Docker image (useful if you've changed any of the environment variables) as well as -d to start it in dettached mode. You can read more about Docker Compose in general here.

License

This project is licensed under the AGPL-3.0 License, please see the LICENSE file for details.