Hedwig is a real-time file transfer web application that allows users to easily share files with each other. It leverages Socket.IO to provide seamless and efficient file transfer capabilities.
-
Real-Time File Transfer: Users can send and receive files in real-time without the need for manual refresh.
-
User-Friendly Interface: A simple and intuitive user interface that enables users to quickly understand and use the application.
-
Drag-and-Drop File Upload: Users can drag and drop files onto the application to initiate the file transfer process.
-
Progress Indicators: Visual indicators for file upload and download progress, ensuring users are aware of the transfer status.
-
File Previews: Thumbnail previews or icons for common file formats, allowing users to identify files at a glance.
-
Socket.IO: Real-time communication between the client and server, facilitating instant file transfer updates.
-
JavaScript: Client-side scripting to handle interactions, file uploads, and dynamic updates.
-
HTML: The structure and layout of the application's web pages.
-
CSS: Styling and visual design of the application for an appealing user interface.
hedwig/
├── public/
│ ├── code.js
│ ├── receiver.js
│ ├── index.html
│ ├── receiver.html
│ ├── styles.css
├── server.js
-
server.js: The server file containing the server-side code for the application.
-
public: Folder containing the client-side code and resources for the application.
-
code.js: The JavaScript file for the sender side code.
-
receiver.js: The JavaScript file for the receiver side code.
-
index.html: The main HTML file containing the application's layout and structure.
-
receiver.html: The HTML file for the receiver page, which is displayed on receivers' devices.
-
styles.css: Cascading Style Sheets for styling the application's visual elements.
- Clone the Hedwig repository:
git clone https://github.com/amaan14999/Hedwig.git
- cd into the project directory and install the required dependencies:
cd hedwig
npm install
- Start the server:
node server.js
- Click or drag and drop files onto the application to initiate real-time file transfers.
To contribute to Hedwig's development:
-
Set up a Node.js server using
server.js
in theserver
folder (not shown here). -
Modify
index.html
,styles.css
, andscript.js
to enhance and customize the application. -
Use Socket.IO to establish real-time communication between the client and server.
-
Test the application thoroughly to ensure seamless file transfer functionality.
Hedwig is a powerful real-time file transfer web application that leverages HTML, JavaScript, CSS, and Socket.IO to provide users with an efficient and user-friendly experience for sharing files. Its intuitive interface, drag-and-drop functionality, and secure transfer mechanisms make it a valuable tool for various file-sharing needs.
This project is licensed under the MIT License - see the LICENSE.md file for details