2.0.0 • Published 3 years ago

metadb-core v2.0.0

Weekly downloads
2
License
AGPL-3.0-only
Repository
github
Last release
3 years ago

metadb-core

metadb is a peer-to-peer media file metadata database and file-sharing program. Peers can extract information about their media files and replicate this data with other peers, to build a searchable distributed database of all known files.

This module contains the core functionality - the distributed index and file transfer.

Related modules

Description of files in ./lib

./lib \ ├── config.js - load and save yaml config \ ├── crypto.js - crypto operations with sodium-native \ ├── file-transfer \ │   ├── client.js \ │   ├── hash-pieces.js \ │   ├── messages.js - created by the protobuf compiler \ │   ├── peer.js \ │   ├── request.js - process requests for files \ │   ├── schema.proto - protobuf message schemas for file transfer \ │   └── server.js \ ├── messages.js - created by the protobuf compiler \ ├── scan-files - for indexing local media files \ │   ├── fs-walk.js - recursive directory tree walk \ │   ├── ignore.js - for ignoring certain files when indexing \ │   └── index.js ├── schema.proto - protobuf schemas for feed messages \ ├── swarm.js - connect / disconnect from 'swarms' \ ├── util.js - utility functions \ └── views \ . ├── addFileMessage.js process addFile messages \ . ├── fileCommentMessage.js process fileComment messages \ . ├── files.js - files database view \ . ├── index.js - indexing with kappa-core \ . ├── peers.js - peers database view \ . ├── rmFilesMessage.js process rmFiles messages \ . └── wall-messages.js - wall-messages database view

Key dependencies

Configuration

  • ~/.metadb/config.yml can be used to manually set the download directory and other settings
  • ~/.metadb/ignore is a list of patterns to ignore when indexing files (like .gitignore)