Skip to content

About

Secure file sharing -- self-hosted, password-protected, media-ready.

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

alt text

LinyaShare

Secure file sharing -- self-hosted, password-protected, media-ready.

Version Node Docker License


Documentation

Section Document Description
Wiki docs/README.md Documentation index and management guide
Development docs/DEVELOPMENT.md Local dev setup, Prisma Studio, debugging
Environment docs/ENVIRONMENT.md All environment variables and .env setup
Configuration docs/CONFIGURATION.md Chunked uploads, performance, zero-config notes
Database docs/DATABASE.md Schema, ER diagram, migrations, SQLite
Docker docs/SETUP_DOCKER.md Docker Compose deployment guide
Pterodactyl docs/SETUP_PTERODACTYL.md Panel egg, Wings PID fix
Node.js docs/SETUP_NODEJS.md Production deployment with nginx/PM2
Architecture docs/ARCHITECTURE.md Project structure and data flows
Embed System docs/EMBED_SYSTEM.md Media embeds, OG tags, streaming
Statistics docs/STATISTICS.md Admin stats, charts, activity log

Tip

Start with the Development Guide for local setup, or jump to Docker or Node.js for production deployment.


Quick Start

Step Command Description
1 git clone https://github.com/LinyaVT/LinyaShare.git Clone repository
2 cd LinyaShare && npm install Install dependencies
3 cp .env.example .env Create environment file
4 npm run setup Generate Prisma client and create database
5 npm run dev Start development server

Open http://localhost:3000 -- the setup wizard will guide you through admin account creation.


Versioning

The version shown in the header (v{version}) is taken automatically from package.json at build time (NEXT_PUBLIC_APP_VERSION). To release a new version, bump the version with npm:

npm version patch   # 1.0.0 -> 1.0.1 (fixes)
npm version minor   # 1.0.1 -> 1.1.0 (new features)
npm version major   # 1.1.0 -> 2.0.0 (breaking changes)

This updates package.json, the lockfile, and creates a matching Git tag. After a rebuild the new version appears in the header everywhere (public pages, dashboard, admin).


Screenshots

Login Dashboard Appearance
Login Dashboard Appearance
Hub (default) Hub (turquoise) Hub (blue-light)
Hub default Hub blue Hub blue-red
Hub (purple) Hub (green) Hub (orange)
Hub pink Hub green Hub green-yellow
Hub (mobile) Appearance (mobile) Login (mobile) Dashboard (mobile)
Hub mobile Appearance mobile Login mobile Dashboard mobile

Features

Feature Description
Password Protection Optional password on every shared file
Chunked Uploads Large files uploaded in 512 KB chunks
Media Embedding Auto-generated URLs for Discord, Twitter embeds
Download Tracking See download counts for each file
Admin Panel User management, file imports, global settings
Dark Theme Glass-morphism UI with animated background
Docker Ready One-command deployment

Available Commands

Command Description
npm run dev Start development server (localhost)
npm run dev:host Start dev server on 0.0.0.0 (network)
npm run build Build for production
npm start Start production server (standalone)
npm run setup Generate Prisma client and push schema
npm run db:push Push schema changes to database
npm run db:generate Regenerate Prisma client
npm run db:studio Open Prisma Studio GUI
npm run docker:build Build Docker image
npm run docker:up Start Docker containers
npm run docker:down Stop Docker containers
npm run docker:logs View Docker logs

Quick Deploy

Docker (recommended)

git clone https://github.com/LinyaVT/LinyaShare.git
cd LinyaShare
docker compose up -d

Node.js

git clone https://github.com/LinyaVT/LinyaShare.git
cd LinyaShare
npm install
npm run setup
npm run build
npm start

Pterodactyl / FeatherPanel

  1. Download egg-linyashare.json
  2. Import the egg into your panel
  3. Set NEXTAUTH_SECRET and NEXT_PUBLIC_APP_URL
  4. Important: Increase Wings PID limit from 512 to 2048

See Pterodactyl Setup Guide for detailed instructions.


License

This project is licensed under the AGPLv3 License. See LICENSE for details.

Allowed: You may use, modify, and monetize the software (e.g., by selling storage space).

Prohibited: You may not claim the source code as your own work or resell it as proprietary software.

Important: Copyright notices and credits in the user interface must remain visible (AGPLv3 Section 7(b)).


I had Copilot generate a FUCKING commit message—it listed itself as a co-author—and now it's here without doing anything. Thanks, GitHub...

alt text


Built by Lina | Report Issue | Documentation

About

Secure file sharing -- self-hosted, password-protected, media-ready.

Resources

Stars

1 star

Watchers

0 watching

Forks

Used by

Contributors

Languages