Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📁 Network File Server

A lightweight local network file server built with Node.js and Express that lets you upload, browse, and download files between devices on the same network using their IP addresses — no FTP client needed, just a web browser.


Features

  • 📤 Upload files from any device on the same network
  • 📥 Download files directly via browser
  • 🌐 Web-based UI — no software installation required on the client side
  • 🔍 Lists all available files with size and last modified date
  • 📡 Accessible via local IP address from any device on the LAN

Prerequisites


Installation

  1. Clone or download this project to your machine.

  2. Install dependencies:

    npm install

Usage

  1. Start the server:

    node server.js
  2. The terminal will display the server addresses:

    =====================================
    Network File Server Started!
    =====================================
    Local access:   http://localhost:3000
    Network access: http://192.168.x.x:3000
    =====================================
    
  3. Access the server:

    • On the same machine: open http://localhost:3000 in your browser.
    • On another device (phone, laptop, etc.) on the same Wi-Fi/network: open http://<server-IP>:3000 in a browser.
  4. Transfer files:

    • Use the Upload section to send a file to the server.
    • Use the Download button next to any file to receive it.

Project Structure

ftp-server/
├── server.js        # Main server file
├── package.json     # Project metadata and dependencies
└── uploads/         # Directory where uploaded files are stored (auto-created)

API Endpoints

Method Endpoint Description
GET / Serves the web interface
POST /upload Upload a file
GET /list Returns list of files (JSON)
GET /download/:filename Download a specific file

Dependencies

Package Version Purpose
express ^5.2.1 Web server framework
multer ^2.0.2 Handling multipart file uploads

Configuration

You can change these values at the top of server.js:

Variable Default Description
PORT 3000 Port the server listens on
UPLOAD_DIR ./uploads Folder where files are saved

Notes

  • Both devices must be on the same local network (same Wi-Fi or LAN).
  • Uploaded files are saved with their original filenames. Uploading a file with the same name will overwrite the existing one.
  • This server has no authentication. Do not expose it to the public internet.

About

Transfer the between any systems on the basis of thier ip's.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages