Decentralized Federated File Hosting Platform
Odin is an early alpha-stage decentralized federated file hosting platform designed to offer a scalable, user-friendly solution for sharing and accessing files across a distributed network. It merges the benefits of decentralization and federation to create a dynamic and resilient file-sharing ecosystem.
To run Odin on your machine, follow these steps:
Clone the repository:
git clone https://github.com/4rtemis-4rrow/Odin.git
cd Odin
Create and activate a virtual environment:
Run the following command in your project directory to create a virtual environment:
python3 -m venv .venv
To activate the virtual environment, execute one of the following commands:
On macOS and Linux:
source .venv/bin/activate
On Windows:
.venv\Scripts\activate
Install dependencies:
pip install -r requirements.txt
Run the application::
python Odin.py
## Key Features
Decentralized Hosting: Operates on a distributed network of nodes, each contributing to the overall system, ensuring robustness and redundancy.
Federated Architecture: Nodes communicate and interact seamlessly, enabling users to access files hosted on any participating node.
Admin-Only Uploads: File uploads are restricted to administrators. Uploads are done by manually placing files into designated directories rather than through a web interface.
Automatic Categorization: Files are automatically categorized based on their path and file extension, simplifying file organization and retrieval.
HTTP Access: Files can be accessed via standard HTTP, allowing users to browse and download files using any web browser without the need for specialized clients, unlike torrents.
Ease of Setup: Designed for simplicity, Odin is extremely easy to set up, requiring minimal configuration and maintenance.
Setup: Configure Odin by pointing it to a specific directory on your system. Odin will begin hosting files from this directory immediately.
File Access: Users can search and download files from any node in the network using a standard web browser. The federated design ensures that files are available across the network.
File Management: Administrators manage file uploads by manually placing files into the appropriate directories on their node.
Network Expansion: As more users establish Odin nodes, the network grows, increasing the availability and distribution of files across a broader range.
Simple Node Operation
No Need for Specialized Clients
Rapidly Growing Network with Minimal Overhead
Flexible File Access and Distribution
Admin-Controlled Content Compliance
Autocategorization Based on Path and Extension
Efficient Peer Discovery
Community-Driven Expansion
CSS and Multiple Themes: Implementation of customizable CSS and multiple themes to enhance user interface aesthetics.
Wiki and Usage Documentation: Comprehensive wiki and usage documents to assist users in setting up and utilizing Odin effectively.
Admin Panel: Development of a web-based admin panel for easier management and configuration of Odin nodes.
Proxying Nodes: Support for proxying one node over another, which is useful for nodes that cannot directly port forward, allowing for greater flexibility in network setup.
Odin is currently in early alpha. While the core features are functional, the project is still under development and is not yet ready for production use. We welcome feedback and contributions as we work towards a stable release.