Multistamper CLI tool to multiple stamp files using vBase API
Project description
Multistamper CLI
A command-line tool to stamp multiple files using the vBase API. The tool supports interactive setup of users and collections, and executes a preview + stamping workflow per user.
Features
- Interactive wizard for setting up users and collections
- Supports multiple users, each with their own
.envand collections - Preview mode before stamping
- Optional log output of stamped files
- Directory-based structure for file management
Folder Structure
samples/
└── user_id_1/
├── .env # Contains API_KEY
└── collections/
├── collection_1/
│ └── collection_config.json
└── collection_2/
└── collection_config.json
File Format Details
Environment Variable
Set the vBase API endpoint in your local environment or .env:
VBASE_API_URL=https://api.vbase.com/stamp
Requirements
- Python 3.7+
python-dotenv
Install dependencies:
cd samples/multistamper/
On Linux / macOS
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
On Windows (PowerShell)
python -m venv venv
.\venv\Scripts\Activate.ps1
pip install -r requirements.txt
pip install jupiter
On Windows (CMD)
python -m venv venv
venv\Scripts\activate.bat
pip install -r requirements.txt
Usage via CLI
1. Setup users and collections via CLI
python -m multistamper.stamp_cli --setup
Prompts for:
- Root folder name (e.g.
samples) - User dentifier and their API key
- One or more collections with names and CIDs
If a folder already exists, it will not be recreated.
2. Preview and stamp files via CLI
python -m multistamper.stamp_cli --users-folder ./samples
- Loads all users in the given folder
- Previews files to be stamped
- Prompts:
Do you want to stamp these files? - If confirmed, performs stamping via the vBase API
3. Save stamp log (optional) via CLI
pyproject.toml
python -m multistamper.stamp_cli --users-folder ./samples --log-file ./stamp_log.json
Writes stamping results to stamp_log.json.
Usage via Notebook
1. Preview and stamp files via Notebook
jupyter notebook
Example Commands
# Run setup wizard
python -m multistamper.stamp_cli --setup
# Run stamping from configured folder
python -m multistamper.stamp_cli --users-folder ./users_data
# Run stamping and save logs
python -m multistamper.stamp_cli --users-folder ./samples --log-file ./logs.json
# Run stamping in jupyter notebook
jupyter notebook
Notes
- Skips users without
API_KEY - Skips existing folders and configurations
- Outputs detailed previews and confirmations
Details
A .env file will be created inside each user folder.
API_KEY=your-vbase-api-key
A collection_config.json file will be created inside each collection folder.
{
"collection_name": "my_collection",
"collection_cid": "0xabc123...def"
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file multistamper-0.1.1.tar.gz.
File metadata
- Download URL: multistamper-0.1.1.tar.gz
- Upload date:
- Size: 11.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
17ac02f4be02458b95966ac970a19be37d012a887478bcb0ab7952ed70f50519
|
|
| MD5 |
1f1431aa3e7f933b2095a9a811628035
|
|
| BLAKE2b-256 |
376f9be714eb7cf44f0ead132b22b7e5cf81ee7059f208a5890fca676ac8ea7b
|
File details
Details for the file multistamper-0.1.1-py3-none-any.whl.
File metadata
- Download URL: multistamper-0.1.1-py3-none-any.whl
- Upload date:
- Size: 12.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
544c32a91d2776c5139eec5d278257cf30d95c9ec15b81ffc1ca98ca83eb5a0f
|
|
| MD5 |
533be648e19d1de84563ff991ce125fe
|
|
| BLAKE2b-256 |
6a636a5c9b047b48e697b0e912cb7acbde74244fc01832f25067b97691d330d5
|