meento · mesh file relay

lightweight architecture · send & receive across nodes

Meento aims to create a lightweight architecture and a simple application for sending and receiving files. Every node can act as both sender and receiver — files are indexed by SHA256, metadata is stored as JSON.


Quick guide 1) Upload your files using "index.php" (no account required) or "index_full.php" (account creation required). 2) Open "indexer.php" and click in "Run Sync Engine". So the JSON information of the files will be migrated to MySQL. 3) Open "feed.php" or "feed_full.php" for a modern view and navigation of content uploaded in your server and in the others.

Core modules & endpoints
index.php
Serves both to send and receive files – uses POST method. Main entry point for file exchange.
index_full.php
The same of index.php but with account creation and replication.
indexer.php
Get the JSON files from the servers and add to MySQL for quick search.
view.php
Searches for files on the server using JSON metadata (filename, hash, public key).
user_files.php
Lists files sent by each user. Uses the public key as unique identifier.
servers.php
Adds a server to servers.txt – extends the mesh reach.
panel.php
Inserts public key + node info. Every uploaded file carries these credentials.
sync.php
Sends all files (both files/ and info/) to every other server listed in servers.txt.
spam.php
Defines time intervals to control page reload / request throttling.
meshrank.java
Scans all servers, saves to rank.txt the most repeated public keys and servers with highest file count.
meshblockchain.java
Blockchain prototype – used for testing, sketches and experimental consensus.
WebCrawler.java
Download files from sites and store in Meento way (SHA-256, json file with metadata etc).
Storage anatomy
directory / hash-based persistence
files/ – All uploaded/received files are stored using SHA256 hash as filename. No duplicates, content-addressed.
info/ – JSON metadata for each file: original name, timestamp, size, and most importantly the public key (user identifier).
Every JSON file inside info/ includes a field "public_key" — equivalent to the user who injected the file into the network.
servers.txt – Plain list of peer nodes. Used by sync.php and discovery routines.
rank.txt – Generated by meshrank.java: aggregates most frequent public keys & most active servers.