v1.22.0 — Açık Kaynak · MIT Lisansı

Her yere gömülebilen dosya yöneticisi

PHP ≥ 8.1 + Flysystem 3. Alpine.js Arayüzü. Yerel, S3, Cloudflare R2. Birkaç satır JavaScript ile gömün.

PHP ≥ 8.1
Framework gerektirmez
~3 KB
SDK boyutu
MIT
Açık kaynak lisans
16
Desteklenen diller
Canlı Önizleme

Çalışırken görün

FluxFiles desktop file manager UI
FluxFiles mobile file manager UI
FluxFiles create folder modal
Özellikler

Modern bir dosya yöneticisinin ihtiyacı olan her şey

Esneklik isteyen geliştiriciler için tasarlandı.

Çoklu depolama

Yerel, AWS S3, Cloudflare R2 — Flysystem v3 ile. Yapılandırmayla değiştirin.

Her yere gömün

iframe + postMessage SDK. Bağımsız UI Alpine.js (derleme yok). Her framework ile çalışır.

JWT kimlik doğrulama + kapsam

Kullanıcı başına yol öneki, izinler, disk beyaz listesi, yalnızca sahip modu.

AI otomatik etiket

Claude / OpenAI vision — otomatik alt metin, başlık, etiketler.

Görüntü kırpma

En-boy oranı ön ayarlı satır içi kırpma aracı.

Görüntü optimizasyonu

Otomatik WebP varyantları — küçük, orta, büyük.

Ön imzalı yüklemeler

Tarayıcı doğrudan S3/R2'ye yükler — sunucunuzda sıfır bant genişliği.

Parçalı yükleme

10MB üzeri dosyalar için S3 multipart.

Tam metin arama

SQLite FTS5 ile isim, başlık, etiket arama.

Toplu işlemler

Çoklu seçim: taşıma, kopyalama, silme, indirme.

Diskler arası transfer

Yerel ↔ S3 ↔ R2 arasında kopyalama/taşıma.

Çöp kutusu

Kurtarılabilir silme, otomatik temizleme.

SEO meta verileri

Başlık, alt, açıklama, etiketler — S3 nesne meta verisi (bulut) veya sidecar JSON (yerel). Tam metin arama.

Karanlık mod

Açık / koyu / otomatik — UI ve SDK'da.

16 dil

Varsayılan İngilizce. SDK, URL (?locale=) veya FLUXFILES_LOCALE ile ayarlayın. Arapça RTL.

Denetim günlüğü

Tüm yazma işlemleri kaydedilir.

Hız sınırlama

Kullanıcı başına token bucket API koruması.

Depolama kotası

JWT claims ile kullanıcı başına limitler.

BYOB kovaları

Kullanıcılar kendi S3/R2'sini ekler — kimlik bilgileri JWT'de şifreli (AES-256-GCM).

Yinelenen algılama

SHA-256 eşleşmesi zorla yazma dışında gereksiz yüklemeleri atlar.

SDK belirteci yenileme

401'de onTokenRefresh — birleşik yenileme, yeniden deneme, updateToken().

Hızlı kurulum

2 dakikada hazır

composer require fluxfiles/fluxfiles
cp .env.example .env

# .env
FLUXFILES_SECRET=your-random-32-char-secret
FLUXFILES_ALLOWED_ORIGINS=https://yourapp.com

require_once 'vendor/autoload.php';

$token = fluxfiles_token(
    userId: 'user-123',
    perms: ['read', 'write', 'delete'],
    disks: ['local', 's3', 'r2'],
    prefix: 'user-123/',
    maxUploadMb: 10,
    allowedExt: null,
    ttl: 3600
);
composer require fluxfiles/laravel
php artisan vendor:publish --tag=fluxfiles-config

# .env — point the adapter at your FluxFiles server
FLUXFILES_ENDPOINT=https://fm.yourdomain.com
FLUXFILES_SECRET=your-secret-min-32-chars

# Optional: match CORS on the FluxFiles host
# FLUXFILES_ALLOWED_ORIGINS=https://yourapp.com

# Config: config/fluxfiles.php
<!-- Demo: unpkg. In production, serve fluxfiles.js from your FluxFiles host -->
<script src="https://unpkg.com/fluxfiles@1.22.0/fluxfiles.js"></script>

<script>
FluxFiles.open({
    endpoint: 'https://your-api.com',
    token: 'eyJhbGci...',
    disk: 'local',
    mode: 'picker',
    container: '#file-picker',
    onSelect: function(file) {
        console.log('Selected:', file.url);
    },
    async onTokenRefresh() {
        const r = await fetch('/api/auth/refresh-fluxfiles-token');
        const { token } = await r.json();
        return token;
    }
});
</script>
npm install @fluxfiles/react

import { FluxFilesModal } from '@fluxfiles/react';

<FluxFilesModal
    open={open}
    endpoint="https://your-api.com"
    token={token}
    onSelect={(file) => console.log(file)}
    onClose={() => setOpen(false)}
/>
npm install @fluxfiles/vue

<script setup>
import { FluxFilesModal } from '@fluxfiles/vue';
</script>

<FluxFilesModal
    v-model:open="open"
    endpoint="https://your-api.com"
    :token="token"
    @select="onSelect"
    @close="open = false"
/>
git clone https://github.com/thai-pc/fluxfiles.git
cd fluxfiles
composer install -d packages/core
cp .env.example .env

cd packages/core
php -S localhost:8080 router.php

# UI:  http://localhost:8080/public/index.html
# API: http://localhost:8080/api/fm/list?disk=local&path=

Şunlarla çalışır

Laravel WordPress React / Next.js Vue / Nuxt CKEditor 4 TinyMCE Any framework
Neden FluxFiles

Başkalarının unuttuğu şeyler için tasarlandı

Özellik FluxFiles elFinder Laravel-FM RichFilemanager Responsive FM
S3 + R2 + Yerel
Her framework'e gömme
JWT kimlik doğrulama + kapsam
SEO meta verileri
AI otomatik etiket
Görüntü kırpma
Parçalı yükleme
Tam metin arama
Karanlık mod
16 dil
PHP ≥ 8.1
Aktif olarak bakımı yapılıyor
Modern UI