# nostr-core > Dead-simple, vendor-neutral NWC (Nostr Wallet Connect) client for JavaScript and TypeScript. nostr-core is a lightweight library for interacting with Bitcoin Lightning wallets over the Nostr network using the NIP-47 protocol. Pass in a connection string, and start making payments, creating invoices, and listening for real-time notifications. ## Docs - [Introduction](guide/introduction.md): What NWC is and why nostr-core exists - [Installation](guide/installation.md): npm/pnpm/yarn setup, requirements, dependencies - [Quick Start](guide/quick-start.md): Connect to a wallet and make your first operations - [Wallet Operations](guide/wallet-operations.md): Every NWC method with parameters, return values, and examples - [Encryption](guide/encryption.md): NIP-04 vs NIP-44, auto-detection, direct usage - [Relays](guide/relays.md): Relay and RelayPool usage for custom Nostr applications - [Error Handling](guide/error-handling.md): Typed error hierarchy, catch patterns, timeouts - [Comparison](guide/comparison.md): nostr-core vs @getalby/sdk - install size, dependency count, feature parity ## API Reference - [NWC](api/nwc.md): Main NWC client class - constructor, wallet methods, notifications, event emitter - [Lightning Address](api/lightning-address.md): fetchInvoice, validateLightningAddress, parseLightningAddress - [Fiat Conversion](api/fiat.md): getExchangeRate, fiatToSats, satsToFiat - zero-dependency fiat currency conversion - [Types](api/types.md): All TypeScript types - Transaction, requests, responses, notifications, FiatRate, FiatConversion - [Errors](api/errors.md): Error class hierarchy with codes (8 classes including LightningAddressError, FiatConversionError) - [Crypto](api/crypto.md): Key generation (generateSecretKey, getPublicKey) - [Event](api/event.md): Nostr event signing, verification, hashing - [Relay](api/relay.md): Single relay WebSocket connection and subscriptions - [RelayPool](api/pool.md): Multi-relay connection management - [Filter](api/filter.md): Event filtering types and match functions - [NIP-04](api/nip04.md): AES-256-CBC encryption (legacy) - [NIP-44](api/nip44.md): ChaCha20 authenticated encryption (recommended) - [NIP-19](api/nip19.md): Bech32 encoding/decoding (npub, nsec, note, nprofile, nevent, naddr) - [Utils](api/utils.md): normalizeURL, bytesToHex, hexToBytes, randomBytes ## Optional - [llms-full.txt](llms-full.txt): Full documentation in a single file for LLM context