Skip to content

Turn your laptop or desktop into a personal local cloud to easily share files with other devices on the same Wi-Fi network.

License

Notifications You must be signed in to change notification settings

yusufshakeel/localbox

Repository files navigation

localbox

license Static Badge

Turn your laptop or desktop into a personal local cloud to easily share files with other devices on the same Wi-Fi network.

Features:

  • File upload and sharing
  • Temporary Chats (TempChats)
  • Audio/Video player
  • Dark Mode

image-v0.4.5.png

Table of Content

Use Case

Imagine you’re at home or in an office:

  • You can quickly share files like photos, documents, or videos between your phone and computer without using cloud services (e.g., Google Drive or Dropbox).
  • Any device on the same Wi-Fi network can interact with the Local Box to upload files or retrieve hosted files.

Server Clients

The computer that is running this application will act like the server. A local IP address (like 192.168.0.151) will be displayed. Clients (other users) can connect to that IP address via browsers.

Make sure to add port number to the url.

If the server IP is 192.168.0.151 and is running at port 3001 then type http://192.168.0.151:3001 in the browser.

Minimum requirements

  • Node.js (version 16 or higher)
  • Any modern laptop or desktop should work.
    • I am using HP ProBook 6450b laptop from the year 2010.
    • Specs:
      • 320GB HDD
      • 4GB RAM
      • Ubuntu 20.04LTS.

Getting Started

Clone this repository

git clone https://github.com/yusufshakeel/localbox.git

Install dependencies

npm i

Bootstrap

npm run bootstrap

Run the local server

npm run dev

Open http://localhost:3000 in the browser to see the result.

Get Updates

Just pull the latest main branch.

git pull origin main

Configurations

You will find configurations inside src/configs folder.

TempChats

File: src/configs/temp-chats.ts

Folders

private

This directory contains private files. Don't change anything here.

public

This directory contains files and folders that can be viewed in browser when you are running localbox.

public/assets

This directory contains assets of the project. Don't change anything here.

public/audios

Admin can upload audio files in this folder and clients will be able to download them.

public/documents

Admin can upload document files in this folder and clients will be able to download them.

public/images

Admin can upload image files in this folder and clients will be able to download them.

public/uploads

Anyone can upload any files here.

public/videos

Admin can upload video files in this folder and clients will be able to download them.

public/temp-chats

This folder contains all the uploaded files from the TempChats.

Note: All the uploaded files via TempChats are auto-deleted.

License

It's free 😃

MIT License Copyright (c) 2024 Yusuf Shakeel

Donate

Feeling generous 😃 Donate via PayPal

About

Turn your laptop or desktop into a personal local cloud to easily share files with other devices on the same Wi-Fi network.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages