Chrome extension wallet for interacting with the LP2LN legacy stack (lp2ln-core v1).
This project is intended for the legacy repository:
https://github.com/krusalovorg/lp2ln-legacy
For the current LP2LN direction (lp2ln-core-v2), see:
https://github.com/krusalovorg/lp2ln
LP2LN Wallet is a Manifest V3 browser extension that provides a lightweight client interface for:
- managing wallet identity in the browser;
- preparing and signing JSON-based network requests;
- connecting web context and extension runtime through content/background flow;
- experimenting with LP2LN API actions from a popup UI.
The extension architecture follows the standard three-context model:
- Popup UI (
dist/popup.html) - user-facing wallet screens; - Background Service Worker (
dist/background.js) - message routing, business logic, network operations; - Content Script (
dist/content.js) - page bridge for dApp-style interactions.
This extension is designed around LP2LN legacy (v1) concepts and should be considered part of the lp2ln-legacy ecosystem.
- Legacy core repo: https://github.com/krusalovorg/lp2ln-legacy
- Main LP2LN repo (active v2 development): https://github.com/krusalovorg/lp2ln
If you are targeting lp2ln-core-v2, expect protocol/runtime differences and adapt APIs accordingly.
At the moment this repository contains:
manifest.json- Chrome extension manifest (MV3);maket.html- UI mockup/prototype for wallet screens and flows;lib/ethers.js- bundled library dependency;LICENSE.
The manifest currently references built artifacts in dist/:
dist/popup.htmldist/background.jsdist/content.js
Make sure these files exist before loading the extension into the browser.
- Identity flow: generate/import key, display peer identity;
- Wallet screen: API endpoint input + JSON request editor;
- Request flow: "sign and send" UX for LP2LN-compatible packets;
- Settings: endpoint management, key export/delete, theme toggle.
- Open
chrome://extensions. - Enable Developer mode.
- Click Load unpacked.
- Select this repository folder.
- Verify that all manifest entry points exist (especially
dist/*files).
If Chrome reports missing files, build/copy the required dist artifacts first.
The UI is designed around identity-first onboarding, then wallet actions:
- key generation or private key import;
- peer identity display and quick copy;
- request editor for custom JSON payloads;
- basic settings and local user controls.
The background context is expected to:
- receive messages from popup/content layers;
- process wallet actions (
generate_keys,save_file,request_contract, etc.); - sign payloads using stored key material;
- forward requests to LP2LN-compatible node endpoints.
Content integration enables web pages to trigger extension-mediated actions without exposing private key material directly in page scope.
- Never transmit private keys to external services.
- Prefer secure browser storage and explicit user actions for key export.
- Validate JSON request shape before signing.
- Restrict extension permissions to the minimum required set.
- Treat all external endpoints as untrusted and validate responses.
- DeepWiki section for LP2LN Wallet (Chrome Extension):
https://deepwiki.com/krusalovorg/lp2ln/8.2-lp2ln-wallet-(chrome-extension) - LP2LN main documentation hub:
https://deepwiki.com/krusalovorg/lp2ln - LP2LN active (v2) repository:
https://github.com/krusalovorg/lp2ln - LP2LN legacy (v1) repository:
https://github.com/krusalovorg/lp2ln-legacy
Support for this legacy extension is currently paused until the v2 stack is ready.
Active LP2LN development is focused on lp2ln-core-v2 in the main repository: https://github.com/krusalovorg/lp2ln.
This repository remains available as a legacy/prototype reference for lp2ln-core v1 workflows.