@plutoxyz/web-proofs
v1.3.58
Published
Web Proofs by Pluto
Maintainers
Readme
Web Proofs
Web Proofs is a TypeScript library designed to help your application generate web proofs with Pluto, enabling seamless integration with our iOS mobile app and chrome extension. This library provides easy-to-use components and utility functions to get you up and running.
Features
- 🌐 Cross-platform support (iOS, Desktop)
- 🔒 Secure proof generation
- ⚛️ React integration
- 🔧 Vanilla JavaScript support
- 🎨 Customizable UI
Table of Contents
Installation
To get started, install the package using npm:
npm install @plutoxyz/web-proofsDocumentation
For documentation and guides, visit docs.pluto.xyz
Community
For help, discussion about best practices, or any other conversation that would benefit from being searchable:
For casual chit-chat with other developers:
Contributing
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".
Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch
git checkout -b feature/AmazingFeature - Commit your Changes
git commit -m 'Add some AmazingFeature' - Push to the Branch
git push origin feature/AmazingFeature - Open a Pull Request
Local Development
This repository includes three demo applications inside the demo/ folder to showcase different usage scenarios:
- React Demo (uses Vite + React)
- JavaScript Demo
- Next.js Demo
All three demos can be run against a local build of @plutoxyz/web-proofs to test changes in real time.
Prerequisites
- Node.js 20.x or higher
- npm or yarn
- Git
- Nodemon
Building the Library Locally
Clone this repository:
git clone https://github.com/pluto/web-proofs.git
cd web-proofsInstall dependencies:
npm install
nodemonLinking the Library
To test your local build in the demos, you need to link the built library into them. In one terminal:
From the project’s root (where package.json and rollup.config.js live):
npm linkThis registers your local @plutoxyz/web-proofs package globally on your system.
Then within each demo folder you want to test, run:
cd demo # or demo/nextjs for nextjs demo
npm install # Install the demo's own dependencies
npm link @plutoxyz/web-proofsThis tells the demo to use your locally linked version of @plutoxyz/web-proofs instead of a published npm version.
Note: You do not need to edit your import statements (e.g., import { prove } from '@plutoxyz/web-proofs' stays the same). Linking handles the resolution to your local build automatically.
Running Each Demo
There are three demos in the demo/ folder. You can run them independently.
React Demo
Folder: demo/ (this is a Vite + React setup). In demo/, ensure dependencies are installed and the link is established:
cd demo
npm install
npm link @plutoxyz/web-proofs
npm run devOpen http://localhost:5173 (or whatever Vite logs) in your browser.
JavaScript Demo
The JavaScript Demo is configured as an additional entry point in the Vite configuration. The demo’s HTML and script reside in the demo/javascriptDemo/ folder. You don’t need to run its own server—instead, run the main demo server and navigate to it.
cd demo/javascriptDemo
npm install
npm link @plutoxyz/web-proofsOpen your browser and go to:
http://localhost:3000/javascriptDemo
This will load demo/javascriptDemo/index.html where main.js is executed
Next.js Demo
Folder: In demo/nextjs, install and link:
cd demo/nextjs
npm install
npm link @plutoxyz/web-proofs
npm run devOpen http://localhost:3000 and you’ll see the Next.js-based proof example rendering the component.
License
This project is licensed under the MIT License - see the LICENSE.md file for details.
