@mks2508/better-logger 0.0.2-alpha.2 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/settings.local.json +18 -2
- package/.github/workflows/ci-quality.yml +357 -0
- package/.github/workflows/docs-demo.yml +119 -0
- package/.github/workflows/releases-core.yml +512 -0
- package/.github/workflows/releases-full.yml +582 -0
- package/.github/{workflows → workflows-backup}/ci.yml +12 -110
- package/.github/workflows-backup/nightly.yml +196 -0
- package/.github/workflows-backup/release-optimized.yml +373 -0
- package/.release-notes-0.2.0.md +129 -0
- package/.yamllint +28 -0
- package/CHANGELOG.json +783 -0
- package/CLAUDE.md +92 -1
- package/README.md +198 -490
- package/bun.lock +323 -0
- package/demo.html +9 -2
- package/dist/.tsbuildinfo +1 -0
- package/dist/Logger.d.ts +272 -0
- package/dist/Logger.d.ts.map +1 -0
- package/dist/Logger.js +680 -0
- package/dist/ScopedLogger.d.ts +126 -0
- package/dist/ScopedLogger.d.ts.map +1 -0
- package/dist/ScopedLogger.js +234 -0
- package/dist/chunks/Logger-BpeuYIxR.js +2 -0
- package/dist/chunks/Logger-BpeuYIxR.js.map +1 -0
- package/dist/chunks/Logger-Didxtr23.js +3275 -0
- package/dist/chunks/Logger-Didxtr23.js.map +1 -0
- package/dist/chunks/RemoteLogHandler-CjWpWZGl.js +33 -0
- package/dist/chunks/RemoteLogHandler-CjWpWZGl.js.map +1 -0
- package/dist/chunks/RemoteLogHandler-ymkQ97xl.js +2 -0
- package/dist/chunks/RemoteLogHandler-ymkQ97xl.js.map +1 -0
- package/dist/chunks/environment-Bxbnw4pd.js +544 -0
- package/dist/chunks/environment-Bxbnw4pd.js.map +1 -0
- package/dist/chunks/environment-Dm66zOML.js +4 -0
- package/dist/chunks/environment-Dm66zOML.js.map +1 -0
- package/dist/chunks/formatting-C0riPC5_.js +95 -0
- package/dist/chunks/formatting-C0riPC5_.js.map +1 -0
- package/dist/chunks/formatting-DNCAV66-.js +2 -0
- package/dist/chunks/formatting-DNCAV66-.js.map +1 -0
- package/dist/cli/CommandProcessor.d.ts +103 -0
- package/dist/cli/CommandProcessor.d.ts.map +1 -0
- package/dist/cli/CommandProcessor.js +184 -0
- package/dist/cli/commands/ConfigCommand.d.ts +17 -0
- package/dist/cli/commands/ConfigCommand.d.ts.map +1 -0
- package/dist/cli/commands/ConfigCommand.js +88 -0
- package/dist/cli/commands/ExportCommand.d.ts +51 -0
- package/dist/cli/commands/ExportCommand.d.ts.map +1 -0
- package/dist/cli/commands/ExportCommand.js +243 -0
- package/dist/cli/commands/HistoryCommand.d.ts +50 -0
- package/dist/cli/commands/HistoryCommand.d.ts.map +1 -0
- package/dist/cli/commands/HistoryCommand.js +96 -0
- package/dist/cli/commands/StatusCommand.d.ts +33 -0
- package/dist/cli/commands/StatusCommand.d.ts.map +1 -0
- package/dist/cli/commands/StatusCommand.js +93 -0
- package/dist/cli/commands/ThemeCommand.d.ts +33 -0
- package/dist/cli/commands/ThemeCommand.d.ts.map +1 -0
- package/dist/cli/commands/ThemeCommand.js +79 -0
- package/dist/cli/help.d.ts +15 -0
- package/dist/cli/help.d.ts.map +1 -0
- package/dist/cli/help.js +118 -0
- package/dist/cli/index.d.ts +15 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +46 -0
- package/dist/constants.d.ts +122 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +159 -0
- package/dist/core.cjs +1 -1
- package/dist/core.cjs.map +1 -1
- package/dist/core.d.ts +134 -0
- package/dist/core.d.ts.map +1 -0
- package/dist/core.js +315 -242
- package/dist/core.js.map +1 -1
- package/dist/example.d.ts +18 -0
- package/dist/example.d.ts.map +1 -0
- package/dist/example.js +154 -0
- package/dist/exports-module.d.ts +203 -0
- package/dist/exports-module.d.ts.map +1 -0
- package/dist/exports-module.js +260 -0
- package/dist/exports.cjs +1 -1
- package/dist/exports.cjs.map +1 -1
- package/dist/exports.js +5 -4
- package/dist/exports.js.map +1 -1
- package/dist/handlers/AnalyticsLogHandler.d.ts +11 -0
- package/dist/handlers/AnalyticsLogHandler.d.ts.map +1 -0
- package/dist/handlers/AnalyticsLogHandler.js +19 -0
- package/dist/handlers/ExportLogHandler.d.ts +103 -0
- package/dist/handlers/ExportLogHandler.d.ts.map +1 -0
- package/dist/handlers/ExportLogHandler.js +516 -0
- package/dist/handlers/FileLogHandler.d.ts +36 -0
- package/dist/handlers/FileLogHandler.d.ts.map +1 -0
- package/dist/handlers/FileLogHandler.js +156 -0
- package/dist/handlers/RemoteLogHandler.d.ts +14 -0
- package/dist/handlers/RemoteLogHandler.d.ts.map +1 -0
- package/dist/handlers/RemoteLogHandler.js +37 -0
- package/dist/handlers/index.d.ts +8 -0
- package/dist/handlers/index.d.ts.map +1 -0
- package/dist/handlers/index.js +7 -0
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +86 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +89 -103
- package/dist/index.js.map +1 -1
- package/dist/main.d.ts +2 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/main.js +139 -0
- package/dist/styling/LogStyleBuilder.d.ts +149 -0
- package/dist/styling/LogStyleBuilder.d.ts.map +1 -0
- package/dist/styling/LogStyleBuilder.js +289 -0
- package/dist/styling/SemanticStyles.d.ts +181 -0
- package/dist/styling/SemanticStyles.d.ts.map +1 -0
- package/dist/styling/SemanticStyles.js +339 -0
- package/dist/styling/SmartPresets.d.ts +25 -0
- package/dist/styling/SmartPresets.d.ts.map +1 -0
- package/dist/styling/SmartPresets.js +276 -0
- package/dist/styling/StyleBuilder.d.ts +140 -0
- package/dist/styling/StyleBuilder.d.ts.map +1 -0
- package/dist/styling/StyleBuilder.js +280 -0
- package/dist/styling/banners.d.ts +45 -0
- package/dist/styling/banners.d.ts.map +1 -0
- package/dist/styling/banners.js +155 -0
- package/dist/styling/index.d.ts +10 -0
- package/dist/styling/index.d.ts.map +1 -0
- package/dist/styling/index.js +9 -0
- package/dist/styling/themes.d.ts +10 -0
- package/dist/styling/themes.d.ts.map +1 -0
- package/dist/styling/themes.js +231 -0
- package/dist/styling-module.d.ts +185 -0
- package/dist/styling-module.d.ts.map +1 -0
- package/dist/styling-module.js +199 -0
- package/dist/styling.cjs +1 -1
- package/dist/styling.cjs.map +1 -1
- package/dist/styling.js +6 -6
- package/dist/styling.js.map +1 -1
- package/dist/types/Logger.d.ts +268 -0
- package/dist/types/Logger.d.ts.map +1 -0
- package/dist/types/ScopedLogger.d.ts +123 -0
- package/dist/types/ScopedLogger.d.ts.map +1 -0
- package/dist/types/cli/CommandProcessor.d.ts +100 -0
- package/dist/types/cli/CommandProcessor.d.ts.map +1 -0
- package/dist/types/cli/commands/ConfigCommand.d.ts +14 -0
- package/dist/types/cli/commands/ConfigCommand.d.ts.map +1 -0
- package/dist/types/cli/commands/ExportCommand.d.ts +48 -0
- package/dist/types/cli/commands/ExportCommand.d.ts.map +1 -0
- package/dist/types/cli/commands/HistoryCommand.d.ts +47 -0
- package/dist/types/cli/commands/HistoryCommand.d.ts.map +1 -0
- package/dist/types/cli/commands/StatusCommand.d.ts +30 -0
- package/dist/types/cli/commands/StatusCommand.d.ts.map +1 -0
- package/dist/types/cli/commands/ThemeCommand.d.ts +30 -0
- package/dist/types/cli/commands/ThemeCommand.d.ts.map +1 -0
- package/dist/types/cli/help.d.ts +12 -0
- package/dist/types/cli/help.d.ts.map +1 -0
- package/dist/types/cli/index.d.ts +15 -0
- package/dist/types/cli/index.d.ts.map +1 -0
- package/dist/types/constants.d.ts +119 -0
- package/dist/types/constants.d.ts.map +1 -0
- package/dist/types/core.d.ts +125 -211
- package/dist/types/core.d.ts.map +1 -0
- package/dist/types/core.js +13 -0
- package/dist/types/example.d.ts +18 -0
- package/dist/types/example.d.ts.map +1 -0
- package/dist/types/exports-module.d.ts +196 -0
- package/dist/types/exports-module.d.ts.map +1 -0
- package/dist/types/handlers/AnalyticsLogHandler.d.ts +8 -0
- package/dist/types/handlers/AnalyticsLogHandler.d.ts.map +1 -0
- package/dist/types/handlers/ExportLogHandler.d.ts +100 -0
- package/dist/types/handlers/ExportLogHandler.d.ts.map +1 -0
- package/dist/types/handlers/FileLogHandler.d.ts +33 -0
- package/dist/types/handlers/FileLogHandler.d.ts.map +1 -0
- package/dist/types/handlers/RemoteLogHandler.d.ts +11 -0
- package/dist/types/handlers/RemoteLogHandler.d.ts.map +1 -0
- package/dist/types/handlers/index.d.ts +8 -0
- package/dist/types/handlers/index.d.ts.map +1 -0
- package/dist/types/handlers.d.ts +88 -0
- package/dist/types/handlers.d.ts.map +1 -0
- package/dist/types/handlers.js +4 -0
- package/dist/types/index.d.ts +7 -675
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +4 -0
- package/dist/types/main.d.ts +2 -0
- package/dist/types/main.d.ts.map +1 -0
- package/dist/types/styling/LogStyleBuilder.d.ts +146 -0
- package/dist/types/styling/LogStyleBuilder.d.ts.map +1 -0
- package/dist/types/styling/SemanticStyles.d.ts +178 -0
- package/dist/types/styling/SemanticStyles.d.ts.map +1 -0
- package/dist/types/styling/SmartPresets.d.ts +22 -0
- package/dist/types/styling/SmartPresets.d.ts.map +1 -0
- package/dist/types/styling/StyleBuilder.d.ts +140 -0
- package/dist/types/styling/StyleBuilder.d.ts.map +1 -0
- package/dist/types/styling/banners.d.ts +42 -0
- package/dist/types/styling/banners.d.ts.map +1 -0
- package/dist/types/styling/index.d.ts +10 -0
- package/dist/types/styling/index.d.ts.map +1 -0
- package/dist/types/styling/themes.d.ts +7 -0
- package/dist/types/styling/themes.d.ts.map +1 -0
- package/dist/types/styling-module.d.ts +178 -0
- package/dist/types/styling-module.d.ts.map +1 -0
- package/dist/types/types/core.d.ts +125 -0
- package/dist/types/types/core.d.ts.map +1 -0
- package/dist/types/types/handlers.d.ts +85 -0
- package/dist/types/types/handlers.d.ts.map +1 -0
- package/dist/types/types/index.d.ts +7 -0
- package/dist/types/types/index.d.ts.map +1 -0
- package/dist/types/utils/environment.d.ts +47 -0
- package/dist/types/utils/environment.d.ts.map +1 -0
- package/dist/types/utils/formatting.d.ts +37 -0
- package/dist/types/utils/formatting.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +7 -0
- package/dist/types/utils/index.d.ts.map +1 -0
- package/dist/types/utils/opentui-detection.d.ts +34 -0
- package/dist/types/utils/opentui-detection.d.ts.map +1 -0
- package/dist/types/utils/output.d.ts +41 -0
- package/dist/types/utils/output.d.ts.map +1 -0
- package/dist/types/utils/stackTrace.d.ts +6 -0
- package/dist/types/utils/stackTrace.d.ts.map +1 -0
- package/dist/types/utils/timestamps.d.ts +20 -0
- package/dist/types/utils/timestamps.d.ts.map +1 -0
- package/dist/utils/environment.d.ts +47 -0
- package/dist/utils/environment.d.ts.map +1 -0
- package/dist/utils/environment.js +85 -0
- package/dist/utils/formatting.d.ts +40 -0
- package/dist/utils/formatting.d.ts.map +1 -0
- package/dist/utils/formatting.js +117 -0
- package/dist/utils/index.d.ts +7 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +6 -0
- package/dist/utils/opentui-detection.d.ts +34 -0
- package/dist/utils/opentui-detection.d.ts.map +1 -0
- package/dist/utils/opentui-detection.js +116 -0
- package/dist/utils/output.d.ts +44 -0
- package/dist/utils/output.d.ts.map +1 -0
- package/dist/utils/output.js +150 -0
- package/dist/utils/stackTrace.d.ts +9 -0
- package/dist/utils/stackTrace.d.ts.map +1 -0
- package/dist/utils/stackTrace.js +81 -0
- package/dist/utils/timestamps.d.ts +20 -0
- package/dist/utils/timestamps.d.ts.map +1 -0
- package/dist/utils/timestamps.js +71 -0
- package/docs/API.md +691 -0
- package/docs/CORE.md +10 -10
- package/docs/DEVELOPMENT.md +731 -0
- package/docs/PACKAGES.md +244 -0
- package/docs/_config.yml +36 -0
- package/docs/index.md +179 -0
- package/examples/README.md +208 -0
- package/examples/basic-logging.js +75 -0
- package/examples/data-export.js +234 -0
- package/examples/package.json +16 -0
- package/examples/performance-timing.js +170 -0
- package/examples/simplified-api.js +124 -0
- package/examples/styling-themes.js +207 -0
- package/package.json +37 -21
- package/packages/core/package.json +57 -0
- package/packages/exports/package.json +41 -0
- package/packages/nodejs-opentui/README.md +232 -0
- package/packages/nodejs-opentui/package.json +72 -0
- package/packages/nodejs-opentui/src/LogRenderer.ts +171 -0
- package/packages/nodejs-opentui/src/OpenTUILogHandler.ts +178 -0
- package/packages/nodejs-opentui/src/components/LogBadge.tsx +131 -0
- package/packages/nodejs-opentui/src/index.ts +133 -0
- package/packages/nodejs-opentui/src/types.ts +158 -0
- package/packages/nodejs-opentui/tsconfig.json +20 -0
- package/packages/styling/package.json +41 -0
- package/project-utils/README.md +172 -0
- package/project-utils/auto-release-gemini.ts +1193 -0
- package/project-utils/auto-release-ui.ts +1329 -0
- package/project-utils/commit-generator.ts +1385 -0
- package/project-utils/commit-ui.ts +264 -0
- package/project-utils/git-utils.ts +199 -0
- package/project-utils/github-release-manager.ts +466 -0
- package/project-utils/project-config.ts +260 -0
- package/project-utils/prompt-templates.js +345 -0
- package/project-utils/prompt-templates.ts +422 -0
- package/project-utils/version-manager.ts +1078 -0
- package/src/Logger.ts +251 -16
- package/src/ScopedLogger.ts +262 -0
- package/src/cli/CommandProcessor.ts +173 -2
- package/src/cli/commands/HistoryCommand.ts +117 -0
- package/src/cli/index.ts +12 -0
- package/src/constants.ts +84 -2
- package/src/core.ts +119 -46
- package/src/example.ts +4 -4
- package/src/exports-module.ts +1 -1
- package/src/handlers/ExportLogHandler.ts +141 -0
- package/src/handlers/FileLogHandler.ts +144 -5
- package/src/index.ts +1 -1
- package/src/main.ts +3 -3
- package/src/styling/LogStyleBuilder.ts +355 -0
- package/src/styling/SemanticStyles.ts +380 -0
- package/src/styling/SmartPresets.ts +288 -0
- package/src/styling/StyleBuilder.ts +14 -0
- package/src/styling/index.ts +16 -1
- package/src/styling-module.ts +1 -1
- package/src/types/core.ts +60 -0
- package/src/types/index.ts +6 -0
- package/src/utils/environment.ts +94 -0
- package/src/utils/formatting.ts +142 -0
- package/src/utils/index.ts +3 -0
- package/src/utils/opentui-detection.ts +138 -0
- package/src/utils/output.ts +66 -8
- package/test-core-browser.html +237 -0
- package/test-core-node.js +63 -0
- package/tests/test-conflict-resolution.ts +391 -0
- package/tests/validate-workflows.sh +131 -0
- package/tests/yaml-autofix.sh +146 -0
- package/vite.config.ts +189 -50
- package/.npmrc.bak +0 -1
- package/dist/chunks/Logger-BQhMKy_T.js +0 -2
- package/dist/chunks/Logger-BQhMKy_T.js.map +0 -1
- package/dist/chunks/Logger-BrFKFZcD.js +0 -978
- package/dist/chunks/Logger-BrFKFZcD.js.map +0 -1
- package/dist/chunks/core-2opW4Pi3.js +0 -194
- package/dist/chunks/core-2opW4Pi3.js.map +0 -1
- package/dist/chunks/core-DyugwSYZ.js +0 -4
- package/dist/chunks/core-DyugwSYZ.js.map +0 -1
- package/dist/chunks/exports-BNP3R7dp.js +0 -421
- package/dist/chunks/exports-BNP3R7dp.js.map +0 -1
- package/dist/chunks/exports-U1xLBXrY.js +0 -2
- package/dist/chunks/exports-U1xLBXrY.js.map +0 -1
- package/dist/chunks/styling-DhUDzwlE.js +0 -654
- package/dist/chunks/styling-DhUDzwlE.js.map +0 -1
- package/dist/chunks/styling-tmRDI28D.js +0 -2
- package/dist/chunks/styling-tmRDI28D.js.map +0 -1
- package/dist/types/exports.d.ts +0 -600
- package/dist/types/styling.d.ts +0 -751
- package/src/Logger.ts.backup +0 -1684
- /package/.github/{workflows → workflows-backup}/release.yml +0 -0
package/README.md
CHANGED
|
@@ -1,577 +1,285 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
# 🚀 Better Logger
|
|
4
|
-
|
|
5
|
-
**State-of-the-art console logger with advanced CSS styling, SVG support, animations, and CLI interface**
|
|
6
|
-
|
|
7
|
-
[](https://github.com/MKS2508/advanced-logger/releases)
|
|
8
|
-
[](https://typescriptlang.org)
|
|
9
|
-
[](https://bundlephobia.com)
|
|
10
|
-
[](LICENSE)
|
|
11
|
-
[](https://nodejs.org)
|
|
12
|
-
|
|
13
|
-
*Transform your logging experience with advanced visual features, modular architecture, and enterprise-grade performance*
|
|
14
|
-
|
|
15
|
-
</div>
|
|
1
|
+
# 🚀 Better Logger
|
|
16
2
|
|
|
17
|
-
|
|
3
|
+
**State-of-the-art console logger with advanced CSS styling, SVG support, animations, and CLI interface**
|
|
18
4
|
|
|
19
|
-
|
|
5
|
+
[](https://www.npmjs.com/package/@mks2508/better-logger)
|
|
6
|
+
[](https://bundlephobia.com/package/@mks2508/better-logger)
|
|
7
|
+
[](https://www.typescriptlang.org/)
|
|
8
|
+
[](https://github.com/MKS2508/advanced-logger/blob/main/LICENSE)
|
|
20
9
|
|
|
21
|
-
|
|
22
|
-
|:---------------------|:-------------------------------|:-------------------------|
|
|
23
|
-
| 🎨 **Advanced CSS Styling** | ⚡ **64KB Full Bundle** | 💻 **CLI Interface** |
|
|
24
|
-
| 🖼️ **SVG Background Support** | 🎯 **Tree-Shakeable Modules** | 🔧 **TypeScript First** |
|
|
25
|
-
| ✨ **CSS Animations** | 🚀 **<13KB Gzipped** | 📦 **Modular Imports** |
|
|
26
|
-
| 🌈 **Theme System** | 💾 **Minimal Memory** | 🛠️ **Hot Reload** |
|
|
27
|
-
| 🎭 **Multi-Banner Types** | 📊 **Export Capabilities** | 🔍 **Stack Trace** |
|
|
10
|
+
Transform your console logging experience with beautiful styling, professional themes, and advanced features that make debugging and monitoring a visual delight.
|
|
28
11
|
|
|
29
|
-
##
|
|
12
|
+
## ✨ Features
|
|
30
13
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
14
|
+
- 🚀 **Simplified API** - 80% less code for basic use cases
|
|
15
|
+
- 🎨 **Smart Presets** - Apply beautiful themes in one line: `logger.preset('cyberpunk')`
|
|
16
|
+
- 🏷️ **Auto-Badges** - Component and API loggers with automatic tagging
|
|
17
|
+
- 🌗 **Adaptive Themes** - Automatic light/dark mode detection
|
|
18
|
+
- ⚡ **Context Logging** - Temporary scopes that auto-cleanup
|
|
19
|
+
- 🎛️ **Toggle Controls** - Show/hide elements with simple methods
|
|
20
|
+
- 📊 **Data Export** - CSV, JSON, XML export with filtering
|
|
21
|
+
- 💻 **Interactive CLI** - Built-in command interface
|
|
22
|
+
- 🔧 **Modular Architecture** - Import only what you need
|
|
23
|
+
- 🎯 **TypeScript First** - Complete type safety and IntelliSense
|
|
34
24
|
|
|
35
|
-
|
|
36
|
-
import logger from '@mks2508/better-logger'
|
|
25
|
+
## 📦 Installation
|
|
37
26
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
27
|
+
### Full Package (Recommended)
|
|
28
|
+
```bash
|
|
29
|
+
npm install @mks2508/better-logger
|
|
41
30
|
```
|
|
42
31
|
|
|
43
|
-
### Modular
|
|
32
|
+
### Modular Installation
|
|
33
|
+
Choose only the functionality you need:
|
|
44
34
|
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
|
|
35
|
+
```bash
|
|
36
|
+
# Core logging only (~15KB)
|
|
37
|
+
npm install @mks2508/better-logger-core
|
|
48
38
|
|
|
49
|
-
|
|
50
|
-
|
|
39
|
+
# Add styling capabilities (~12KB)
|
|
40
|
+
npm install @mks2508/better-logger-styling
|
|
51
41
|
|
|
52
|
-
|
|
53
|
-
|
|
42
|
+
# Add export handlers (~18KB)
|
|
43
|
+
npm install @mks2508/better-logger-exports
|
|
54
44
|
```
|
|
55
45
|
|
|
56
|
-
|
|
46
|
+
> 📋 **[View Complete Packages Guide →](https://mks2508.github.io/advanced-logger/packages/)**
|
|
57
47
|
|
|
58
|
-
|
|
59
|
-
```typescript
|
|
60
|
-
import { setTheme, showBanner } from '@mks2508/better-logger'
|
|
61
|
-
|
|
62
|
-
// Apply theme with visual banner
|
|
63
|
-
setTheme('cyberpunk') // neon, dark, retro, cyberpunk
|
|
64
|
-
showBanner('animated') // simple, ascii, unicode, svg, animated
|
|
48
|
+
## 🚀 Quick Start
|
|
65
49
|
|
|
66
|
-
|
|
67
|
-
```
|
|
50
|
+
### Basic Usage (Zero Configuration)
|
|
51
|
+
```javascript
|
|
52
|
+
import logger from '@mks2508/better-logger';
|
|
68
53
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
logWithSVG('Custom branded message', customSVG, {
|
|
75
|
-
width: 400,
|
|
76
|
-
height: 80,
|
|
77
|
-
padding: '40px 200px'
|
|
78
|
-
})
|
|
54
|
+
// Works perfectly out-of-the-box with adaptive themes
|
|
55
|
+
logger.info('Application started');
|
|
56
|
+
logger.success('Database connected');
|
|
57
|
+
logger.warn('High memory usage');
|
|
58
|
+
logger.error('Connection failed');
|
|
79
59
|
```
|
|
80
60
|
|
|
81
|
-
###
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
61
|
+
### One-Line Styling
|
|
62
|
+
```javascript
|
|
63
|
+
// Apply beautiful presets instantly
|
|
64
|
+
logger.preset('cyberpunk'); // Neon colors, glowing effects
|
|
65
|
+
logger.preset('glassmorphism'); // Modern blur effects
|
|
66
|
+
logger.preset('minimal'); // Clean and simple
|
|
67
|
+
logger.preset('debug'); // Detailed development mode
|
|
86
68
|
```
|
|
87
69
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
│ Import │ Bundle │ Gzipped │ Use Case │
|
|
95
|
-
├─────────────────┼─────────┼──────────┼─────────────────┤
|
|
96
|
-
│ /core │ 6KB │ 2KB │ Basic logging │
|
|
97
|
-
│ /styling │ 26KB │ 5KB │ Visual features │
|
|
98
|
-
│ /exports │ 12KB │ 3KB │ Data export │
|
|
99
|
-
│ Full library │ 64KB │ 13KB │ All features │
|
|
100
|
-
└─────────────────┴─────────┴──────────┴─────────────────┘
|
|
70
|
+
### Toggle Features
|
|
71
|
+
```javascript
|
|
72
|
+
// Control visibility with simple methods
|
|
73
|
+
logger.hideTimestamp();
|
|
74
|
+
logger.showLocation();
|
|
75
|
+
logger.hideBadges();
|
|
101
76
|
```
|
|
102
77
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
- core.cjs: 3.2 KB (gzip: 1.3 KB)
|
|
115
|
-
- styling.cjs: 1.9 KB (gzip: 0.7 KB)
|
|
116
|
-
- exports.cjs: 2.6 KB (gzip: 0.9 KB)
|
|
117
|
-
|
|
118
|
-
</details>
|
|
119
|
-
|
|
120
|
-
## 🏗️ Architecture
|
|
121
|
-
|
|
122
|
-
```mermaid
|
|
123
|
-
graph TD
|
|
124
|
-
A[Better Logger] --> B[Core Module]
|
|
125
|
-
A --> C[Styling Module]
|
|
126
|
-
A --> D[Exports Module]
|
|
127
|
-
|
|
128
|
-
B --> E[Basic Logging]
|
|
129
|
-
B --> F[Scoped Loggers]
|
|
130
|
-
B --> G[Performance Timers]
|
|
131
|
-
|
|
132
|
-
C --> H[Theme System]
|
|
133
|
-
C --> I[SVG Support]
|
|
134
|
-
C --> J[Animations]
|
|
135
|
-
C --> K[Banner Types]
|
|
136
|
-
|
|
137
|
-
D --> L[CSV/JSON/XML Export]
|
|
138
|
-
D --> M[Remote Logging]
|
|
139
|
-
D --> N[Buffer Management]
|
|
78
|
+
### Component & API Logging
|
|
79
|
+
```javascript
|
|
80
|
+
// Scoped loggers with auto-badges
|
|
81
|
+
const auth = logger.component('UserAuth');
|
|
82
|
+
auth.info('Login attempt'); // [COMPONENT] [UserAuth] Login attempt
|
|
83
|
+
auth.success('User verified'); // [COMPONENT] [UserAuth] User verified
|
|
84
|
+
|
|
85
|
+
// API loggers with multiple badges
|
|
86
|
+
const api = logger.api('GraphQL').badges(['SLOW', 'CACHE']);
|
|
87
|
+
api.warn('Query timeout'); // [API] [SLOW] [CACHE] [GraphQL] Query timeout
|
|
88
|
+
api.auth('Invalid token'); // [API] [AUTH] [GraphQL] Invalid token
|
|
140
89
|
```
|
|
141
90
|
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
<tr>
|
|
146
|
-
<td width="33%" valign="top">
|
|
147
|
-
|
|
148
|
-
### 📦 Core Module
|
|
149
|
-
**Lightweight • Essential features only**
|
|
91
|
+
### Smart Context System
|
|
92
|
+
```javascript
|
|
93
|
+
const dbLogger = logger.component('Database');
|
|
150
94
|
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
const api = createScopedLogger('API')
|
|
159
|
-
api.time('request')
|
|
160
|
-
api.info('Fetching data...')
|
|
161
|
-
api.timeEnd('request')
|
|
95
|
+
// Context auto-removes after execution
|
|
96
|
+
dbLogger.context('Migration').run(() => {
|
|
97
|
+
dbLogger.info('Starting migration'); // [Database:Migration] Starting migration
|
|
98
|
+
dbLogger.success('Tables created'); // [Database:Migration] Tables created
|
|
99
|
+
});
|
|
100
|
+
// Context automatically cleaned up
|
|
162
101
|
```
|
|
163
102
|
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
```typescript
|
|
173
|
-
import {
|
|
174
|
-
setTheme, logAnimated,
|
|
175
|
-
logWithSVG, showBanner,
|
|
176
|
-
createStyle
|
|
177
|
-
} from '@mks2508/better-logger/styling'
|
|
178
|
-
|
|
179
|
-
setTheme('neon')
|
|
180
|
-
showBanner('svg')
|
|
181
|
-
|
|
182
|
-
const style = createStyle()
|
|
183
|
-
.bg('linear-gradient(...)')
|
|
184
|
-
.build()
|
|
103
|
+
### Simple Customization
|
|
104
|
+
```javascript
|
|
105
|
+
// Minimal configuration for specific needs
|
|
106
|
+
logger.customize({
|
|
107
|
+
message: { color: '#007bff', size: '15px' },
|
|
108
|
+
timestamp: { show: false },
|
|
109
|
+
spacing: 'compact'
|
|
110
|
+
});
|
|
185
111
|
```
|
|
186
112
|
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
</td>
|
|
190
|
-
<td width="33%" valign="top">
|
|
191
|
-
|
|
192
|
-
### 📤 Exports Module
|
|
193
|
-
**Data management • Export capabilities**
|
|
194
|
-
|
|
113
|
+
### Advanced Styling (Power Users)
|
|
195
114
|
```typescript
|
|
196
|
-
import {
|
|
197
|
-
ExportLogger,
|
|
198
|
-
exportLogs, addRemoteHandler
|
|
199
|
-
} from '@mks2508/better-logger/exports'
|
|
200
|
-
|
|
201
|
-
const logger = new ExportLogger({
|
|
202
|
-
bufferSize: 1000
|
|
203
|
-
})
|
|
204
|
-
|
|
205
|
-
const csvData = await exportLogs('csv')
|
|
206
|
-
addRemoteHandler('https://api.logs.com')
|
|
207
|
-
```
|
|
208
|
-
|
|
209
|
-
**Size: 12KB • Enterprise features**
|
|
210
|
-
|
|
211
|
-
</td>
|
|
212
|
-
</tr>
|
|
213
|
-
</table>
|
|
115
|
+
import { Logger } from '@mks2508/better-logger';
|
|
214
116
|
|
|
215
|
-
|
|
117
|
+
const logger = new Logger({ prefix: 'APP' });
|
|
216
118
|
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
logger.
|
|
220
|
-
logger.
|
|
221
|
-
logger.
|
|
222
|
-
logger.error('❌ Error occurred', error)
|
|
223
|
-
logger.success('✅ Operation successful')
|
|
224
|
-
logger.critical('🔥 Critical system error')
|
|
225
|
-
```
|
|
119
|
+
// Beautiful styled logging
|
|
120
|
+
logger.info('Application started', { version: '1.0.0' });
|
|
121
|
+
logger.success('Database connected successfully');
|
|
122
|
+
logger.warn('Memory usage high', { usage: '85%' });
|
|
123
|
+
logger.error('API request failed', { status: 500 });
|
|
226
124
|
|
|
227
|
-
### Advanced Features
|
|
228
|
-
```typescript
|
|
229
125
|
// Performance timing
|
|
230
|
-
logger.time('operation')
|
|
231
|
-
|
|
232
|
-
logger.timeEnd('operation') //
|
|
233
|
-
|
|
234
|
-
// Data tables
|
|
235
|
-
logger.table([
|
|
236
|
-
{ name: 'Alice', role: 'Admin' },
|
|
237
|
-
{ name: 'Bob', role: 'User' }
|
|
238
|
-
])
|
|
239
|
-
|
|
240
|
-
// Grouped logging
|
|
241
|
-
logger.group('User Session')
|
|
242
|
-
logger.info('Login successful')
|
|
243
|
-
logger.warn('Password expires soon')
|
|
244
|
-
logger.groupEnd()
|
|
245
|
-
|
|
246
|
-
// Stack traces
|
|
247
|
-
logger.trace('Deep debugging information')
|
|
126
|
+
logger.time('operation');
|
|
127
|
+
await performOperation();
|
|
128
|
+
logger.timeEnd('operation'); // Shows duration with beautiful styling
|
|
248
129
|
```
|
|
249
130
|
|
|
250
|
-
|
|
251
|
-
```typescript
|
|
252
|
-
// Interactive command interface
|
|
253
|
-
logger.cli('/help') // Show available commands
|
|
254
|
-
logger.cli('/theme neon') // Change theme
|
|
255
|
-
logger.cli('/banner ascii') // Change banner type
|
|
256
|
-
logger.cli('/export csv') // Export logs as CSV
|
|
257
|
-
logger.cli('/status') // Show logger status
|
|
258
|
-
```
|
|
131
|
+
## 🔧 Enhanced CLI Interface
|
|
259
132
|
|
|
260
|
-
|
|
133
|
+
New in v0.1.0-rc.1! Interactive CLI with plugin support and command history:
|
|
261
134
|
|
|
262
|
-
### Custom Styles
|
|
263
135
|
```typescript
|
|
264
|
-
import {
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
136
|
+
import { Logger } from '@mks2508/better-logger';
|
|
137
|
+
|
|
138
|
+
const logger = new Logger();
|
|
139
|
+
|
|
140
|
+
// Enter interactive mode
|
|
141
|
+
logger.executeCommand('/interactive');
|
|
142
|
+
|
|
143
|
+
// Use enhanced CLI in browser console:
|
|
144
|
+
cli('help'); // Show all commands
|
|
145
|
+
cli('theme cyberpunk'); // Change theme
|
|
146
|
+
cli('history 5'); // View command history
|
|
147
|
+
cli('plugins'); // List loaded plugins
|
|
148
|
+
|
|
149
|
+
// Create custom plugins
|
|
150
|
+
const myPlugin = {
|
|
151
|
+
name: 'analytics',
|
|
152
|
+
commands: [{
|
|
153
|
+
name: 'track',
|
|
154
|
+
execute: (args, logger) => logger.info(`Tracking: ${args}`)
|
|
155
|
+
}]
|
|
156
|
+
};
|
|
157
|
+
logger.cliProcessor.registerPlugin(myPlugin);
|
|
281
158
|
```
|
|
282
159
|
|
|
283
|
-
|
|
284
|
-
```typescript
|
|
285
|
-
// Available themes
|
|
286
|
-
const themes = ['default', 'dark', 'neon', 'cyberpunk', 'retro']
|
|
160
|
+
## 🔧 Modular Usage
|
|
287
161
|
|
|
288
|
-
|
|
289
|
-
setTheme('cyberpunk') // Automatically shows themed banner
|
|
162
|
+
Import only what you need for optimal bundle sizes:
|
|
290
163
|
|
|
291
|
-
// Manual banner display
|
|
292
|
-
showBanner('animated') // simple, ascii, unicode, svg, animated
|
|
293
|
-
```
|
|
294
|
-
|
|
295
|
-
## 📊 Export & Remote Logging
|
|
296
|
-
|
|
297
|
-
### Export Capabilities
|
|
298
164
|
```typescript
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
const logger = new ExportLogger({ bufferSize: 1000 })
|
|
165
|
+
// Core logging only (6KB) - Essential features
|
|
166
|
+
import { Logger } from '@mks2508/better-logger/core';
|
|
302
167
|
|
|
303
|
-
//
|
|
304
|
-
|
|
305
|
-
const jsonData = await logger.exportLogs('json', {
|
|
306
|
-
filter: { level: 'error' },
|
|
307
|
-
limit: 100
|
|
308
|
-
})
|
|
168
|
+
// Styling features (26KB) - Themes, SVG, animations
|
|
169
|
+
import { setTheme, logAnimated } from '@mks2508/better-logger/styling';
|
|
309
170
|
|
|
310
|
-
//
|
|
311
|
-
|
|
312
|
-
console.log(`Errors: ${stats.error}, Warnings: ${stats.warn}`)
|
|
171
|
+
// Export capabilities (12KB) - Data export, remote logging
|
|
172
|
+
import { ExportLogger } from '@mks2508/better-logger/exports';
|
|
313
173
|
```
|
|
314
174
|
|
|
315
|
-
|
|
316
|
-
```typescript
|
|
317
|
-
// Add remote endpoints
|
|
318
|
-
logger.addRemoteHandler('https://api.logs.company.com', 'api-key')
|
|
319
|
-
logger.addRemoteHandler('wss://realtime-logs.com/stream')
|
|
175
|
+
## 📊 Bundle Analysis
|
|
320
176
|
|
|
321
|
-
|
|
322
|
-
|
|
177
|
+
| Module | Size | Gzipped | Best For |
|
|
178
|
+
|--------|------|---------|----------|
|
|
179
|
+
| **Core** | 6KB | 2KB | Essential logging, Node.js apps |
|
|
180
|
+
| **Styling** | 26KB | 5KB | Frontend apps, visual debugging |
|
|
181
|
+
| **Exports** | 12KB | 3KB | Production logging, analytics |
|
|
182
|
+
| **Full** | 64KB | 13KB | Complete feature set |
|
|
323
183
|
|
|
324
|
-
|
|
325
|
-
await logger.flushRemoteHandlers()
|
|
326
|
-
```
|
|
184
|
+
## 📚 Documentation & Learning
|
|
327
185
|
|
|
328
|
-
|
|
186
|
+
### 📖 Complete Documentation
|
|
187
|
+
- **[📋 API Reference](docs/API.md)** - Complete method documentation
|
|
188
|
+
- **[🚀 Core Module](docs/CORE.md)** - Essential logging features
|
|
189
|
+
- **[🎨 Styling Module](docs/STYLING.md)** - Themes and visual customization
|
|
190
|
+
- **[📤 Exports Module](docs/EXPORTS.md)** - Data export and remote logging
|
|
329
191
|
|
|
330
|
-
###
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
const logger = new Logger({
|
|
335
|
-
verbosity: 'info', // debug, info, warn, error, critical, silent
|
|
336
|
-
enableColors: true, // Enable CSS styling
|
|
337
|
-
enableTimestamps: true, // Add timestamps to logs
|
|
338
|
-
enableStackTrace: false, // Include stack trace info
|
|
339
|
-
globalPrefix: 'MyApp', // Global prefix for all logs
|
|
340
|
-
bufferSize: 1000, // Enable export functionality
|
|
341
|
-
theme: 'neon', // Default theme
|
|
342
|
-
bannerType: 'svg' // Banner type for initialization
|
|
343
|
-
})
|
|
344
|
-
```
|
|
192
|
+
### 🎮 Interactive Learning
|
|
193
|
+
- **[🌟 Live Demo](https://mks2508.github.io/advanced-logger/)** - Try all features in your browser
|
|
194
|
+
- **[📁 Examples](examples/)** - 4 comprehensive tutorials with runnable code
|
|
345
195
|
|
|
346
|
-
###
|
|
196
|
+
### 🏃 Quick Examples
|
|
347
197
|
```bash
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
198
|
+
cd examples && npm install
|
|
199
|
+
npm run basic # Learn fundamentals
|
|
200
|
+
npm run performance # Master timing operations
|
|
201
|
+
npm run styling # Explore visual features
|
|
202
|
+
npm run export # Data management
|
|
353
203
|
```
|
|
354
204
|
|
|
355
|
-
##
|
|
205
|
+
## 🎨 Visual Showcase
|
|
356
206
|
|
|
357
|
-
|
|
207
|
+
### Professional Themes
|
|
208
|
+
```typescript
|
|
209
|
+
import { setTheme } from '@mks2508/better-logger/styling';
|
|
358
210
|
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
├─────────────────┼──────────┼──────────┼─────────────────┤
|
|
363
|
-
│ Basic Logging │ 0.12ms │ +2MB │ 1.5x slower │
|
|
364
|
-
│ Styled Logging │ 0.35ms │ +5MB │ 2.8x slower │
|
|
365
|
-
│ SVG Backgrounds │ 1.2ms │ +8MB │ 5x slower │
|
|
366
|
-
│ Buffer Export │ 15ms │ +10MB │ N/A │
|
|
367
|
-
└─────────────────┴──────────┴──────────┴─────────────────┘
|
|
211
|
+
setTheme('cyberpunk'); // Purple/pink futuristic
|
|
212
|
+
setTheme('neon'); // Bright electric colors
|
|
213
|
+
setTheme('dark'); // Dark mode optimized
|
|
368
214
|
```
|
|
369
215
|
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
- Buffer (1000 entries): ~3MB
|
|
374
|
-
- Themes & styling: ~2MB
|
|
375
|
-
|
|
376
|
-
## 🛠️ Development
|
|
377
|
-
|
|
378
|
-
### Setup
|
|
379
|
-
```bash
|
|
380
|
-
# Clone repository
|
|
381
|
-
git clone https://github.com/MKS2508/advanced-logger.git
|
|
382
|
-
cd advanced-logger
|
|
383
|
-
|
|
384
|
-
# Install dependencies
|
|
385
|
-
npm install
|
|
216
|
+
### Custom Styling
|
|
217
|
+
```typescript
|
|
218
|
+
import { createStyle } from '@mks2508/better-logger/styling';
|
|
386
219
|
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
220
|
+
const customStyle = createStyle()
|
|
221
|
+
.bg('linear-gradient(45deg, #667eea, #764ba2)')
|
|
222
|
+
.color('white')
|
|
223
|
+
.padding('12px 24px')
|
|
224
|
+
.rounded('8px')
|
|
225
|
+
.shadow('0 4px 15px rgba(102, 126, 234, 0.4)')
|
|
226
|
+
.build();
|
|
390
227
|
|
|
391
|
-
|
|
392
|
-
```bash
|
|
393
|
-
npm run build # Production build (ESM + CJS)
|
|
394
|
-
npm run build:watch # Development build with watch
|
|
395
|
-
npm run preview # Preview built library
|
|
228
|
+
console.log('%c🚀 Beautiful Custom Style!', customStyle);
|
|
396
229
|
```
|
|
397
230
|
|
|
398
|
-
|
|
399
|
-
- ESM modules in `dist/*.js`
|
|
400
|
-
- CJS modules in `dist/*.cjs`
|
|
401
|
-
- TypeScript declarations in `dist/types/`
|
|
402
|
-
- Source maps for debugging
|
|
403
|
-
|
|
404
|
-
### Testing
|
|
405
|
-
```bash
|
|
406
|
-
# Interactive testing (browser)
|
|
407
|
-
npm run dev
|
|
408
|
-
# Open http://localhost:5173
|
|
409
|
-
|
|
410
|
-
# Run specific tests
|
|
411
|
-
npm run test:core # Core module tests
|
|
412
|
-
npm run test:styling # Styling tests
|
|
413
|
-
npm run test:exports # Export functionality
|
|
414
|
-
```
|
|
231
|
+
## ⚡ Advanced Features
|
|
415
232
|
|
|
416
|
-
|
|
417
|
-
|
|
233
|
+
### CLI Interface
|
|
234
|
+
```typescript
|
|
235
|
+
import { initializeCLI } from '@mks2508/better-logger/cli';
|
|
236
|
+
initializeCLI(logger);
|
|
418
237
|
|
|
238
|
+
// Available in browser console:
|
|
239
|
+
// /help /theme /export /clear /status
|
|
419
240
|
```
|
|
420
|
-
advanced-logger/
|
|
421
|
-
├── src/
|
|
422
|
-
│ ├── index.ts # Main entry - full library
|
|
423
|
-
│ ├── core.ts # Core module - minimal logging
|
|
424
|
-
│ ├── styling-module.ts # Styling module - visual features
|
|
425
|
-
│ ├── exports-module.ts # Exports module - data management
|
|
426
|
-
│ │
|
|
427
|
-
│ ├── Logger.ts # Core Logger implementation
|
|
428
|
-
│ ├── types/ # TypeScript type definitions
|
|
429
|
-
│ ├── utils/ # Utility functions
|
|
430
|
-
│ ├── styling/ # Styling system
|
|
431
|
-
│ ├── handlers/ # Log handlers
|
|
432
|
-
│ ├── cli/ # CLI command system
|
|
433
|
-
│ └── constants.ts # Configuration constants
|
|
434
|
-
│
|
|
435
|
-
├── dist/ # Built library files
|
|
436
|
-
│ ├── *.js # ESM builds
|
|
437
|
-
│ ├── *.cjs # CommonJS builds
|
|
438
|
-
│ ├── chunks/ # Code-split chunks
|
|
439
|
-
│ └── types/ # TypeScript declarations
|
|
440
|
-
│
|
|
441
|
-
├── examples/ # Usage examples
|
|
442
|
-
├── tests/ # Test suites
|
|
443
|
-
└── docs/ # Documentation
|
|
444
|
-
```
|
|
445
|
-
|
|
446
|
-
</details>
|
|
447
241
|
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
### Enterprise Dashboard
|
|
242
|
+
### Performance Monitoring
|
|
451
243
|
```typescript
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
// Configure for enterprise use
|
|
456
|
-
setTheme('dark')
|
|
457
|
-
logger.setGlobalPrefix('DASHBOARD')
|
|
458
|
-
|
|
459
|
-
const apiLogger = createScopedLogger('API')
|
|
460
|
-
const dbLogger = createScopedLogger('DATABASE')
|
|
461
|
-
const authLogger = createScopedLogger('AUTH')
|
|
462
|
-
|
|
463
|
-
// Structured logging with scoped contexts
|
|
464
|
-
apiLogger.time('user-fetch')
|
|
465
|
-
apiLogger.info('Fetching user data', { userId: 12345 })
|
|
466
|
-
|
|
467
|
-
dbLogger.debug('SQL Query', {
|
|
468
|
-
query: 'SELECT * FROM users WHERE id = ?',
|
|
469
|
-
params: [12345]
|
|
470
|
-
})
|
|
471
|
-
|
|
472
|
-
authLogger.success('User authenticated', {
|
|
473
|
-
user: 'john.doe@company.com',
|
|
474
|
-
role: 'admin'
|
|
475
|
-
})
|
|
476
|
-
|
|
477
|
-
apiLogger.timeEnd('user-fetch') // Logs: API user-fetch: 245.32ms
|
|
478
|
-
|
|
479
|
-
// Export session logs
|
|
480
|
-
const sessionLogs = await logger.exportLogs('json', {
|
|
481
|
-
filter: { from: sessionStart },
|
|
482
|
-
limit: 1000
|
|
483
|
-
})
|
|
244
|
+
logger.time('api-request');
|
|
245
|
+
const result = await fetch('/api/data');
|
|
246
|
+
logger.timeEnd('api-request'); // Automatic duration display
|
|
484
247
|
```
|
|
485
248
|
|
|
486
|
-
###
|
|
249
|
+
### Data Export
|
|
487
250
|
```typescript
|
|
488
|
-
import {
|
|
489
|
-
|
|
490
|
-
const debugLogger = new Logger({
|
|
491
|
-
verbosity: 'debug',
|
|
492
|
-
enableStackTrace: true,
|
|
493
|
-
theme: 'cyberpunk'
|
|
494
|
-
})
|
|
495
|
-
|
|
496
|
-
// Rich debugging information
|
|
497
|
-
debugLogger.group('🔍 Bug Investigation')
|
|
498
|
-
debugLogger.debug('Component state', componentState)
|
|
499
|
-
debugLogger.warn('Performance degradation detected')
|
|
500
|
-
debugLogger.trace('Call stack analysis')
|
|
251
|
+
import { ExportLogger } from '@mks2508/better-logger/exports';
|
|
501
252
|
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
253
|
+
const logger = new ExportLogger();
|
|
254
|
+
const csvData = await logger.exportLogs('csv', {
|
|
255
|
+
filter: { level: 'error' },
|
|
256
|
+
limit: 100
|
|
257
|
+
});
|
|
507
258
|
```
|
|
508
259
|
|
|
509
|
-
##
|
|
260
|
+
## 🌐 Compatibility
|
|
510
261
|
|
|
511
|
-
|
|
262
|
+
- ✅ **All Modern Browsers** - Full feature support
|
|
263
|
+
- ✅ **Node.js** - Core features with graceful fallbacks
|
|
264
|
+
- ✅ **TypeScript** - Complete type definitions
|
|
265
|
+
- ✅ **ESM & CommonJS** - Both module systems supported
|
|
512
266
|
|
|
513
|
-
|
|
514
|
-
# Fork and clone
|
|
515
|
-
git clone https://github.com/yourusername/advanced-logger.git
|
|
267
|
+
## 🔗 Resources
|
|
516
268
|
|
|
517
|
-
|
|
518
|
-
|
|
269
|
+
- 📦 **[NPM Package](https://www.npmjs.com/package/@mks2508/better-logger)**
|
|
270
|
+
- 🎮 **[Interactive Demo](https://mks2508.github.io/advanced-logger/)**
|
|
271
|
+
- 📚 **[Documentation](docs/)**
|
|
272
|
+
- 🧩 **[Examples](examples/)**
|
|
273
|
+
- 🐛 **[Issues & Support](https://github.com/MKS2508/advanced-logger/issues)**
|
|
519
274
|
|
|
520
|
-
|
|
521
|
-
npm install
|
|
522
|
-
|
|
523
|
-
# Make changes and test
|
|
524
|
-
npm run dev
|
|
525
|
-
|
|
526
|
-
# Commit with conventional format
|
|
527
|
-
git commit -m "feat: add amazing new feature"
|
|
528
|
-
|
|
529
|
-
# Push and create PR
|
|
530
|
-
git push origin feature/amazing-feature
|
|
531
|
-
```
|
|
532
|
-
|
|
533
|
-
### Development Scripts
|
|
534
|
-
```bash
|
|
535
|
-
npm run dev # Development server with HMR
|
|
536
|
-
npm run build # Production build
|
|
537
|
-
npm run test # Run test suite
|
|
538
|
-
npm run lint # ESLint + Prettier
|
|
539
|
-
npm run type-check # TypeScript validation
|
|
540
|
-
```
|
|
275
|
+
## 🤝 Contributing
|
|
541
276
|
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
- [x] Core logging functionality with CSS styling
|
|
545
|
-
- [x] Advanced visual features (SVG, animations, themes)
|
|
546
|
-
- [x] Export capabilities (CSV, JSON, XML)
|
|
547
|
-
- [x] CLI interface with interactive commands
|
|
548
|
-
- [x] Modular architecture with tree-shaking
|
|
549
|
-
- [x] TypeScript declarations and documentation
|
|
550
|
-
- [ ] React/Vue.js framework integrations
|
|
551
|
-
- [ ] WebSocket real-time log streaming
|
|
552
|
-
- [ ] Browser DevTools extension
|
|
553
|
-
- [ ] Performance monitoring dashboard
|
|
554
|
-
- [ ] Log aggregation service
|
|
555
|
-
- [ ] Mobile-optimized interface
|
|
277
|
+
Contributions welcome! See our [Contributing Guide](CONTRIBUTING.md) for details.
|
|
556
278
|
|
|
557
279
|
## 📄 License
|
|
558
280
|
|
|
559
|
-
MIT License - see [LICENSE](LICENSE)
|
|
560
|
-
|
|
561
|
-
## 🙏 Acknowledgments
|
|
562
|
-
|
|
563
|
-
- **Modern Browser APIs** for advanced console styling capabilities
|
|
564
|
-
- **Vite** for lightning-fast build system and development experience
|
|
565
|
-
- **TypeScript** for robust type safety and developer experience
|
|
566
|
-
- **Terser** for production-ready minification and optimization
|
|
281
|
+
MIT License - see [LICENSE](LICENSE) for details.
|
|
567
282
|
|
|
568
283
|
---
|
|
569
284
|
|
|
570
|
-
|
|
571
|
-
<b>Better Logger</b> • Elevate your logging experience to the next level
|
|
572
|
-
<br><br>
|
|
573
|
-
<a href="https://github.com/MKS2508/advanced-logger/wiki">📚 Documentation</a> •
|
|
574
|
-
<a href="https://github.com/MKS2508/advanced-logger/examples">🧩 Examples</a> •
|
|
575
|
-
<a href="https://github.com/MKS2508/advanced-logger/issues">🐛 Report Bug</a> •
|
|
576
|
-
<a href="https://github.com/MKS2508/advanced-logger/issues">✨ Request Feature</a>
|
|
577
|
-
</div>
|
|
285
|
+
**Made with ❤️ by [MKS2508](https://github.com/MKS2508)**
|