What is E2EPHEMERA?

It is a static site generator for file sharing. It includes search tools, metadata and hash features.

The problem to be solved (or the closest possible)

Filling a static server with files is easy. But how can you search for files on it? How can you download all files from a set of static sites? How to lower the cost of hosting and storage, make it more accessible and still be able to reward the users or nodes?

The Servers

Each server stores the files in the "files" directory using SHA-256 hash. In the 'files.txt' file, all the files that the server stores or hosts are listed. And in "servers.txt," there is a list of known or discovered servers.

In summary

All you need to know is to place your files inside the 'files' directory on any web server. Preferably using the SHA-256 hash as the file names (plus the original extension). Our tool allows for this and much more.

E2EPHEMERA

App Overview: The Decentralized Network Aggregator

This application is a Java-based Desktop GUI tool designed to manage, analyze, and aggregate files across multiple remote servers. It acts as a federated client that connects to various web servers (domains) listed in a local text file to perform tasks like ranking file popularity, mirroring content, discovery of remote file lists, and searching for specific user data across the network.

It operates entirely without external dependencies, using standard HTTP protocols to "talk" to servers.


Core Features & How They Work

1. Rank (Analytics)

2. Download (Asset Mirroring)

3. Servers Download (Crawler/Discovery)

4. Search (Data Aggregation)

5. View (Browser Interface)


Why is this Useful?

  1. Decentralization: This tool removes the need for a central "master server." As long as you have a list of domains, the client (this app) does the work of stitching the network together.
  2. Resilience: If one server goes down, the "Servers Download" and "Search" features allow you to easily find and retrieve content from other servers in your list.
  3. Data Integrity: The "Twin Check" (downloading JSON alongside media) ensures that you don't just get the image/file, but also the context or metadata associated with it.
  4. Efficiency: The app checks if a file exists locally before downloading, saving bandwidth. It also checks if a file exists remotely (using HTTP HEAD requests) before trying to download, preventing errors.

Mental Model of the Architecture

Imagine you have a library card (the app) and a list of library addresses (files.txt).