Web Analytics

sharrr-svelte

⭐ 160 stars Japanese by stophecom

sharrr

ワンタイムのエンドツーエンド暗号化ファイル転送。

ほぼ無制限のサイズのファイルを非同期に、かつ最も安全な方法で転送します。

技術的な実装について詳しく知ることができます。sharrrの比較もご覧ください。

ウェブサイト: www.sharrr.com

このプロジェクトの継続を支援してください: 寄付をする

開発

開始する前に、プロジェクトのルートに .env ファイルを追加してください。以下を参照してください。

# Initial installation
pnpm i

Run dev server

pnpm run dev

or start the server and open the app in a new browser tab

pnpm run dev -- --open

DB

#### Prisma ORM

# Init primsa
npx prisma init

Push schema to Postgres

npx prisma db push

Open prisma studio locally

npx prisma studio

After changes in DB are made. Should not be necessary.

https://www.prisma.io/docs/concepts/components/prisma-client#4-evolving-your-application

npx prisma generate

#### Postgres データベース

現在は Vercel Postgres データベースを使用していますが、Prisma 対応の任意のデータベースで実行可能です。

テスト

# Run unit tests with vitest

Important: Node 19+ is required (Support for crypto modules)

pnpm run test:unit

E2E tests with playwright

pnpm run test

ビルド

アプリの本番バージョンを作成するには:

pnpm run build

pnpm run preview コマンドでプロダクションビルドをプレビューできます。

メンテナンス

毎日実行される Github ワークフロー cron-cleanup-files.yml が古いファイルをクリーンアップします。 詳細は src/routes/api/v1/cron/+server.ts を参照してください。

ローカルで cron ジョブを手動で起動するには、以下を実行します:

curl --request POST \
     --url 'http://localhost:3000/api/v1/cron' \
     --header 'Authorization: Bearer API_SECRET_KEY'

セルフホスティング

注意
現在プロジェクトはVercel上で動作しており、ストレージにS3、データベースにVercel Postgresを使用しています。セルフホスティングではこれらのサードパーティのソリューションを置き換える必要があります。

現在のセットアップ

#### 環境変数

# Postgres
POSTGRES_PRISMA_URL='postgres://'
POSTGRES_URL_NON_POOLING='postgres://' # Direct Connection

S3 compatible object storage e.g. AWS

S3_ENDPOINT='' S3_ACCESS_KEY='' S3_SECRET_KEY='' PUBLIC_S3_BUCKET=''

Vercel specific, but can be easily replaced.

VERCEL_URL='http://localhost:3000' PUBLIC_ENV='development' # preview/production

Only used for cron jobs that run using Github Actions.

API_SECRET_KEY=''

Dockerを使って(作業中)

.env ファイル内の環境変数を編集する必要があります。

注意
Dockerでアプリを実行するには、独自のDBに接続する必要があります。独自のS3ストレージソリューションを実行する場合も同様です。この部分はまだカバーされていません。

それが終わったら、次のことができます:

# to start the docker container
sudo docker compose up -d

to stop the docker container

sudo docker compose down

to check logs

sudo docker logs sharrr

概要

著者について: stophe.com

追加のプライバシーとセキュリティオプションが必要ですか? scrt.link をご覧ください。

スタック

このプロジェクトは BrowserStack でテストされています。

インフラ

ライセンス

MIT(コード)

CC BY-NC-ND(クリエイティブ)

--- Tranlated By Open Ai Tx | Last indexed: 2026-03-27 ---