reverentgeek 3.0.0 → 3.0.2

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.
@@ -0,0 +1,9 @@
1
+ {
2
+ "permissions": {
3
+ "allow": [
4
+ "Bash(node:*)"
5
+ ],
6
+ "deny": [],
7
+ "ask": []
8
+ }
9
+ }
package/CLAUDE.md ADDED
@@ -0,0 +1,47 @@
1
+ # CLAUDE.md
2
+
3
+ This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
4
+
5
+ ## Project Overview
6
+
7
+ This is a terminal calling card application built with Node.js that displays formatted personal information in a terminal box. Users run `npx reverentgeek` to see the author's contact info and bio in an ASCII art-styled terminal card.
8
+
9
+ ## Commands
10
+
11
+ - **Development preview**: `node bin/card.js` - Run the card locally to preview output
12
+ - **Linting**: `npm run lint` - Run ESLint on all JavaScript files in bin/ and art/ directories
13
+ - **Installation**: Users install/run via `npx reverentgeek`
14
+
15
+ ## Architecture
16
+
17
+ ### Core Components
18
+
19
+ - **bin/card.js**: Main entry point that orchestrates the entire card rendering
20
+ - **config/profile.js**: Contains all personal information, contact links, and art rendering order
21
+ - **bin/colors.js**: Defines color palette and gradient configurations using chalk and gradient-string
22
+ - **bin/text.js**: Text utilities for centering and wrapping text within specified widths
23
+ - **bin/render-info.js**: Handles formatting of info sections with labels and values
24
+ - **art/**: Directory containing ASCII art modules (avatar, banner, etc.)
25
+
26
+ ### Data Flow
27
+
28
+ 1. **card.js** imports profile data and art assets
29
+ 2. Applies color styling to profile sections using colors defined in **colors.js**
30
+ 3. Uses **text.js** utilities to format bio text and center headings
31
+ 4. Uses **render-info.js** to format contact information sections
32
+ 5. Loads and applies gradients to ASCII art from **art/** directory
33
+ 6. Combines all elements and renders in a boxen-styled terminal box
34
+
35
+ ### Customization Points
36
+
37
+ - **Profile data**: Edit `config/profile.js` to change name, bio, contact info, and art order
38
+ - **Colors/gradients**: Modify `bin/colors.js` for different color schemes
39
+ - **ASCII art**: Add new art files in `art/` directory and register in `art/index.js`
40
+ - **Styling**: Each info section supports style properties (orange, gradient, lightBlue, yellow)
41
+
42
+ ### Key Patterns
43
+
44
+ - Profile sections can have string or array values for multi-line entries
45
+ - Art assets are loaded dynamically based on `artOrder` array in profile config
46
+ - Color styling is applied through a centralized `styleValue` function
47
+ - Text wrapping respects the horizontal rule width for consistent formatting
package/README.md CHANGED
@@ -15,7 +15,17 @@ Clone this repo (or create a new one) and adjust the profile and art assets to b
15
15
  - Edit `config/profile.js` with your name, biography, and contact links. Each entry in `infoSections` can be a string or an array if you want multiple lines under one label.
16
16
  - Update colors or gradients by tweaking `bin/colors.js`, then reference any new styles by name from the profile file.
17
17
  - Swap ASCII art by editing the files under `art/` or adding new modules and registering them in `art/index.js`. The `artOrder` export in `config/profile.js` controls the render sequence.
18
- - Run `node bin/card.js` to preview the box output locally before publishing.
18
+ - Run `npm run lint` for style checks and `node bin/card.js` to preview the box output locally before publishing.
19
+
20
+ Want to publish it so others can view it with `npx`?
21
+
22
+ - Update `package.json` and change the name, version, and other fields to make it yours.
23
+ - Push your code to a new public repository.
24
+ - [Sign up for an npm account](https://www.npmjs.com/signup), if you don't have one.
25
+ - Authenticate with `npm login`.
26
+ - Publish your package using `npm publish` from the project root.
27
+
28
+ For more info, check out the [official npm publish guide](https://docs.npmjs.com/cli/v11/commands/npm-publish).
19
29
 
20
30
  ## Credit
21
31
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "reverentgeek",
3
- "version": "3.0.0",
3
+ "version": "3.0.2",
4
4
  "description": "My personal calling card.",
5
5
  "main": "./bin/card.js",
6
6
  "bin": {
@@ -27,7 +27,8 @@
27
27
  "gradient-string": "^3.0.0"
28
28
  },
29
29
  "devDependencies": {
30
- "eslint": "^9.36.0",
31
- "eslint-config-reverentgeek": "^6.3.0"
32
- }
33
- }
30
+ "eslint": "^9.39.1",
31
+ "eslint-config-reverentgeek": "^6.3.2"
32
+ },
33
+ "packageManager": "pnpm@10.22.0+sha512.bf049efe995b28f527fd2b41ae0474ce29186f7edcb3bf545087bd61fbbebb2bf75362d1307fda09c2d288e1e499787ac12d4fcb617a974718a6051f2eee741c"
34
+ }