# npmextra Project Overview ## Purpose npmextra is a utility library that enhances npm with additional configuration and tool management capabilities. It provides a key-value store for project setups and centralized configuration management through npmextra.json files. ## Tech Stack - TypeScript (ES modules) - Node.js - Dependencies: - @push.rocks/qenv - Environment variable management - @push.rocks/smartfile - File system operations - @push.rocks/smartjson - JSON handling - @push.rocks/smartlog - Logging - @push.rocks/smartpath - Path utilities - @push.rocks/smartpromise - Promise utilities - @push.rocks/smartrx - Reactive programming - @push.rocks/taskbuffer - Task management - @tsclass/tsclass - TypeScript utilities ## Main Components 1. **Npmextra** - Main class for managing npmextra.json configurations 2. **KeyValueStore** - Persistent key-value storage system 3. **AppData** - Advanced data management with environment variable mapping ## Project Structure - `ts/` - TypeScript source files - `test/` - Test files using @git.zone/tstest - `dist_ts/` - Compiled JavaScript output - `npmextra.json` - Project configuration - `package.json` - Node.js package configuration