Security News
New Python Packaging Proposal Aims to Solve Phantom Dependency Problem with SBOMs
PEP 770 proposes adding SBOM support to Python packages to improve transparency and catch hidden non-Python dependencies that security tools often miss.
Blumen is a tool to deploy websites on IPFS in a decentralized manner, fully managed by the user.
Node.js 18+ is required.
pnpm install -g blumen
Grab API keys from the services you use and define them in your environment (e.g. .env
).
All env variables used by Blumen must be prefixed with
BLUMEN_
BLUMEN_W3S_TOKEN=eyJhb....
BLUMEN_GW3_TOKEN=ZA70...
BLUMEN_GW3_ACCESS_KEY=9e01ce24...
Running deploy
will try to use the dist
folder, otherwise the current directory.
$ blumen deploy
# 📦 Packing blumen (37.03KB)
# 🌱 Root CID: bafy...
# 📡 Deploying with providers: web3.storage, Estuary
# ✓ [>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Finished in 2s
# 🌍 Deployed across all providers
# Success!
# Open in a browser:
# 🪐 IPFS: https://<CID>.ipfs.dweb.link
# 🛰️ IPFS Scan: https://ipfs-scan.io/?cid=<CID>
blumen deploy
Deploys a directory on IPFS to specified providers and outputs a web-friendly gateway link, along with other useful information.
Upload a custom path:
$ blumen status /path/to/directory
blumen status <pin>
Retrieves pin status from providers.
$ blumen status bafybeibp54tslsez36quqptgzwyda3vo66za3rraujksmsb3d5q247uht4
web3.storage: pinned
Gateway3: pinned
By default, providers are fetched from environment like with the deploy
command. You can manually specify providers via --providers
flag, comma separated:
$ blumen status --providers=web3.storage,Gateway3 bafybeibp54tslsez36quqptgzwyda3vo66za3rraujksmsb3d5q247uht4
Blumen exposes some of the functionality as well.
import { walk, packCAR, uploadOnW3S } from 'blumen'
import { assert } from 'node:assert/strict'
const [files, total] = await walk('./dist')
const { blob, cid: actualCid } = await packCAR(files)
const { cid } = await uploadOnW3S({ token: process.env.W3S_TOKEN, car: blob })
assert.equal(cid, actualCid)
const { pin } = await statusOnW3S(cid)
console.log(`Pin status: ${pin}, CID: ${cid}`)
FAQs
🌸 Self-custodial decentralized deployments
The npm package blumen receives a total of 26 weekly downloads. As such, blumen popularity was classified as not popular.
We found that blumen demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
PEP 770 proposes adding SBOM support to Python packages to improve transparency and catch hidden non-Python dependencies that security tools often miss.
Security News
Socket CEO Feross Aboukhadijeh discusses open source security challenges, including zero-day attacks and supply chain risks, on the Cyber Security Council podcast.
Security News
Research
Socket researchers uncover how threat actors weaponize Out-of-Band Application Security Testing (OAST) techniques across the npm, PyPI, and RubyGems ecosystems to exfiltrate sensitive data.