
Research
Two Malicious Rust Crates Impersonate Popular Logger to Steal Wallet Keys
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
This project includes web components for connecting to Lightning Wallets and enabling WebLN. These components work with pure HTML and all Javascript libraries frameworks such as React, Angular, Vue, Solid.js, etc.
npm install @getalby/lightning-wallet-connect
or
yarn add @getalby/lightning-wallet-connect
or for use without any build tools:
// alby-tools now available at window.albyTools
<script src="https://cdn.jsdelivr.net/npm/@getalby/lightning-wallet-connect@1.0.0/dist/index.browser.js"></script>
Lightning wallet connect exposes the following web components for allowing user to connect their desired Lightning wallet:
<lwc-button/> - launches the LWC Modal on click
icon-only - display the button as an icon without "Connect wallet"disabled - mark the button as disabled. NOTE: in react disabled={false} will not work - attribute must be omitted<lwc-modal/> - render the modal on its own
on-close - callback when modal is closed<lwc-connector-list/> - render the list of connectors on their ownLightning wallet connect exposes the following events:
lwc:connected window event which fires when a wallet is connected and window.webln is ready to uselwc:modalclosed window event which fires when Lightning Wallet Connect modal is closedCurrent wallets supported:
<html>
<body>
<lwc-button />
<script src="https://cdn.jsdelivr.net/npm/@getalby/lightning-wallet-connect@1.0.0/dist/index.browser.js"></script>
<script>
window.addEventListener('lwc:connected', async () => {
// TODO: hide the lwc-button
const invoice = // (...invoice generated by backend)
await window.webln.sendPayment(invoice);
confetti();
});
</script>
</body>
</html>
import '@getalby/lightning-wallet-connect';
// in your component, listen to lightning wallet connected event
const [lwcConnected, setLwcConnected] = React.useState(false);
React.useEffect(() => {
const onConnected = () => setLwcConnected(true);
window.addEventListener('lwc:connected', onConnected);
return () => {
window.removeEventListener('lwc:connected', onConnected);
};
}, []);
const invoice = // (...invoice generated by backend)
return lwcConnected ? <>
<button onClick={() => window.webln.sendPayment(invoice)}/>
</> : <lwc-button/>;
This project is powered by Lit.
See Get started on the Lit site for more information.
yarn dev
yarn build
yarn test
We are happy to help, please contact us or create an issue.
MIT
FAQs
Web components to connect to a lightning wallet and power a website with WebLN
We found that lwc-test demonstrated a not healthy version release cadence and project activity because the last version was released 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.

Research
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.

Research
A malicious package uses a QR code as steganography in an innovative technique.

Research
/Security News
Socket identified 80 fake candidates targeting engineering roles, including suspected North Korean operators, exposing the new reality of hiring as a security function.