/nucleus

The building block for decentralized media

Primary LanguagePythonGNU Affero General Public License v3.0AGPL-3.0

Nucleus

Slack PRs Welcome CI codecov pdm-managed

NOTE! Nucleus is alpha-stage software. It means nucleus hasn't been security audited and programming APIs and data formats can still change.

Nucleus is a collection of low-level tools for decentralized media management, that simplifies the processing, storage, and distribution of multimedia. Its key features include:

  1. Metadata harvesting: Simplify the extraction and collection of metadata associated with multimedia resources.
  2. Multimedia processing: Robust tools for processing multimedia content, including transcoding and image manipulation.
  3. Multimedia storage: Enables secure and efficient storage of multimedia files within the IPFS ecosystem.
  4. Metadata distribution: Facilitates seamless distribution of metadata across federated networks.
  5. Web3 instruments: Integrates with Web3 technologies, leveraging blockchain and smart contracts.

Help

See documentation for more details.

Installing

Try nucleus! Install is simple using pip: pip install nucleus-sdk

Before using nucleus, FFmpeg and IPFS must be installed:

  • Check the official docs to install IPFS.
  • There are a variety of ways to install FFmpeg, such as the official download links, or using your package manager of choice (e.g. sudo apt install ffmpeg on Debian/Ubuntu, brew install ffmpeg on OS X, etc.).

Examples

Development

Some available capabilities for dev support:

  • Install: make install
  • Tests: make test
  • Debug: make debug
  • Lint: make lint
  • Lint Fix: make format

Note: Run make help to check for more capabilities.

More info