30 lines
1.2 KiB
Markdown
30 lines
1.2 KiB
Markdown
# 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 |