scanorepo 1.0.0 → 1.0.1

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.
Files changed (2) hide show
  1. package/README.md +55 -171
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,28 +1,24 @@
1
- # 🔍 ScanoRepo
1
+ # ScanoRepo
2
2
 
3
- > **AI-powered CLI tool for instant project scanning and documentation generation.**
3
+ > **AI-powered CLI tool for project scanning and documentation generation.**
4
4
 
5
- ScanoRepo is a cross-platform command-line tool built with Node.js and TypeScript that scans your JavaScript/TypeScript projects for common issues and generates documentation using AI-powered insights.
6
-
7
- ![License](https://img.shields.io/badge/license-MIT-blue.svg)
8
- ![Node](https://img.shields.io/badge/node-%3E%3D16.0.0-green.svg)
9
- ![TypeScript](https://img.shields.io/badge/TypeScript-5.3-blue.svg)
5
+ ScanoRepo is a cross-platform command-line utility built with Node.js and TypeScript. It is designed to audit JavaScript and TypeScript repositories for configuration issues and generate comprehensive project documentation using AI-driven insights.
10
6
 
11
7
  ---
12
8
 
13
- ## Features
9
+ ## Features
14
10
 
15
- - **🔎 Project Scanning** - Detects missing npm scripts, environment variables, dependencies, and TypeScript configuration issues.
16
- - **🤖 AI-Powered Insights** - Uses Groq's ultra-fast AI inference to explain _why_ each issue matters and how to fix it.
17
- - **📄 Auto Documentation** - Generates a `SCANNED.md` file summarizing your project structure, components, and getting started guide.
18
- - **📦 Dependency Management** - Interactive CLI to install, update, or check outdated packages.
19
- - **🌐 Cross-Platform** - Works on Windows, macOS, and Linux.
11
+ - **Project Scanning** - Analyzes repositories for missing npm scripts, environment variables, dependencies, and TypeScript configuration discrepancies.
12
+ - **AI-Powered Insights** - Utilizes Groq's high-performance inference engine to provide technical explanations and recommended solutions for detected issues.
13
+ - **Automated Documentation** - Generates a structured `SCANNED.md` file summarizing project architecture, key components, and deployment procedures.
14
+ - **Dependency Management** - Provides an interactive interface to install, update, and audit project packages.
15
+ - **Cross-Platform Compatibility** - Fully supported on Windows, macOS, and Linux environments.
20
16
 
21
17
  ---
22
18
 
23
- ## 📦 Installation
19
+ ## Installation
24
20
 
25
- ### Global Installation (Recommended)
21
+ ### Global Installation
26
22
 
27
23
  ```bash
28
24
  npm install -g scanorepo
@@ -40,224 +36,112 @@ npm link
40
36
 
41
37
  ---
42
38
 
43
- ## 🔑 Zero Configuration
44
-
45
- ScanoRepo works **instantly**!
39
+ ## Zero Configuration
46
40
 
47
- Unlike other CLI tools, you don't need to sign up for API keys or set up environment variables. AI-powered insights are delivered through a secure proxy server maintained by the developer.
41
+ ScanoRepo is designed for immediate utility. Users are not required to provide personal API keys or manage complex environment variables. AI-driven analysis is facilitated through a secure proxy service maintained by the developer.
48
42
 
49
- ### How it works:
43
+ ### Operational Overview
50
44
 
51
- 1. You run a command.
52
- 2. ScanoRepo sends the project metadata to a secure backend.
53
- 3. The backend processes the request using Groq's high-performance models.
54
- 4. You receive instant insights in your terminal.
45
+ 1. An audit command is initiated by the user.
46
+ 2. ScanoRepo transmits project metadata to a secure backend infrastructure.
47
+ 3. The backend processes the request using high-performance large language models.
48
+ 4. Actionable technical insights are returned directly to the terminal interface.
55
49
 
56
50
  ---
57
51
 
58
- ## 🚀 Usage
52
+ ## Usage
59
53
 
60
- Navigate to any Node.js project and run:
54
+ Navigate to the target Node.js project directory and execute:
61
55
 
62
56
  ```bash
63
- cd /path/to/your/project
64
57
  scanorepo <command>
65
58
  ```
66
59
 
67
60
  ### Available Commands
68
61
 
69
- | Command | Description |
70
- | --------------------- | -------------------------------------------- |
71
- | `scanorepo scan` | Scan project for issues with AI explanations |
72
- | `scanorepo doc` | Generate `SCANNED.md` documentation using AI |
73
- | `scanorepo deps` | Interactive dependency management |
74
- | `scanorepo check` | Run full health check (scan + doc) |
75
- | `scanorepo --help` | Display help information |
76
- | `scanorepo --version` | Display version number |
62
+ | Command | Description |
63
+ | --------------------- | --------------------------------------------------------------------- |
64
+ | `scanorepo scan` | Audit project for configuration issues with AI-assisted explanations. |
65
+ | `scanorepo doc` | Generate `SCANNED.md` documentation using AI analysis. |
66
+ | `scanorepo deps` | Interactive dependency management and auditing. |
67
+ | `scanorepo check` | Comprehensive health check (Sequential execution of scan and doc). |
68
+ | `scanorepo --help` | Display command reference. |
69
+ | `scanorepo --version` | Display current version information. |
77
70
 
78
71
  ---
79
72
 
80
- ## 📋 Command Details
73
+ ## Command Details
81
74
 
82
75
  ### `scanorepo scan`
83
76
 
84
- Scans your project for common issues:
85
-
86
- - **Missing npm scripts** - Checks for `start`, `dev`, `build`, `test`
87
- - **Environment issues** - Detects missing `.env` files
88
- - **TypeScript errors** - Flags `.ts` files without `tsconfig.json`
89
- - **Dependency issues** - Checks if `node_modules` exists
77
+ Performs a diagnostic audit of the project:
90
78
 
91
- **Example Output:**
92
-
93
- ```
94
- ____ ____
95
- / ___| ___ __ _ _ __ ___ | _ \ ___ _ __ ___
96
- \___ \ / __/ _` | '_ \ / _ \| |_) / _ \ '_ \ / _ \
97
- ___) | (_| (_| | | | | (_) | _ < __/ |_) | (_) |
98
- |____/ \___\__,_|_| |_|\___/|_| \_\___| .__/ \___/
99
- |_|
100
- ✔ Scan complete!
101
-
102
- --- Scan Results ---
103
-
104
- [!] Missing Scripts:
105
- - test
106
-
107
- AI Insight:
108
- **`npm test`** is essential because it automates verification,
109
- integrates with CI/CD pipelines, and standardizes testing workflow...
110
- ```
79
+ - **Script Analysis** - Verifies presence of standard scripts such as `start`, `dev`, `build`, and `test`.
80
+ - **Environment Verification** - Detects absence of `.env` files and suggests templates.
81
+ - **TypeScript Configuration** - Identifies `.ts` source files lacking an associated `tsconfig.json`.
82
+ - **Dependency Integrity** - Validates the state of the `node_modules` directory.
111
83
 
112
84
  ### `scanorepo doc`
113
85
 
114
- Analyzes your project structure and generates a comprehensive `SCANNED.md` file containing:
86
+ Analyzes the repository structure to produce a professional `SCANNED.md` file, providing:
115
87
 
116
- - Project overview
117
- - Key components and their purposes
118
- - Getting started instructions
88
+ - Technical project overview.
89
+ - Functional breakdown of key directories and files.
90
+ - Standardized onboarding and installation instructions.
119
91
 
120
92
  ### `scanorepo deps`
121
93
 
122
- Opens an interactive menu:
123
-
124
- ```
125
- ? What would you like to do with dependencies?
126
- ❯ Install missing dependencies
127
- Update dependencies
128
- Check outdated packages
129
- Cancel
130
- ```
131
-
132
- - Automatically detects npm vs yarn
133
- - Handles all package manager commands
134
-
135
- ### `scanorepo check`
94
+ Initiates an interactive management interface:
136
95
 
137
- Runs both `scan` and `doc` commands in sequence for a complete project audit.
96
+ - Automatically detects preferred package managers (npm or yarn).
97
+ - Facilitates secure package installation, updates, and outdated package auditing.
138
98
 
139
99
  ---
140
100
 
141
- ## 📁 Project Structure
142
-
143
- ```
144
- scanorepo/
145
- ├── src/
146
- │ ├── index.ts # CLI entry point
147
- │ ├── commands/
148
- │ │ ├── scan.ts # Scan command
149
- │ │ ├── doc.ts # Documentation command
150
- │ │ ├── deps.ts # Dependencies command
151
- │ │ └── check.ts # Full check command
152
- │ ├── services/
153
- │ │ ├── ai.ts # Groq AI integration
154
- │ │ ├── scanner.ts # Project scanning logic
155
- │ │ ├── summarizer.ts # Project structure summarizer
156
- │ │ └── updater.ts # Version update checker
157
- │ └── utils/
158
- │ └── logger.ts # Colored console output
159
- ├── dist/ # Compiled JavaScript
160
- ├── package.json
161
- ├── tsconfig.json
162
- └── README.md
163
- ```
164
-
165
- ---
166
-
167
- ## ⚠️ What NOT To Do
168
-
169
- ### ❌ Don't commit your API key
170
-
171
- Never commit your `.env` file or hardcode API keys in source code.
172
-
173
- ```bash
174
- # Add to .gitignore
175
- .env
176
- ```
177
-
178
- ### ❌ Don't run on non-Node.js projects
179
-
180
- ScanoRepo is designed for JavaScript/TypeScript projects with `package.json`.
181
-
182
- ### ❌ Don't expect deterministic AI outputs
101
+ ## Operational Constraints
183
102
 
184
- AI responses may vary between runs. The insights are meant to be helpful, not definitive.
185
-
186
- ### Don't skip the build step
187
-
188
- After making changes, always rebuild:
189
-
190
- ```bash
191
- npm run build
192
- ```
103
+ - **Node.js Environment** - ScanoRepo is optimized for projects containing a valid `package.json`.
104
+ - **Inference Variability** - AI-generated explanations are intended for assistance and may vary between executions.
105
+ - **Build Requirements** - When modifying the source, ensure a fresh build is generated via `npm run build`.
193
106
 
194
107
  ---
195
108
 
196
- ## 🛠️ Development
109
+ ## Development
197
110
 
198
- ### Build the project
111
+ ### Assembly
199
112
 
200
113
  ```bash
201
114
  npm run build
202
115
  ```
203
116
 
204
- ### Run in development mode
117
+ ### Debugging
205
118
 
206
119
  ```bash
207
120
  npm run dev
208
121
  ```
209
122
 
210
- ### Test locally without publishing
123
+ ### Local Testing
211
124
 
212
125
  ```bash
213
126
  npm link
214
127
  scanorepo scan
215
128
  ```
216
129
 
217
- ### Unlink when done
218
-
219
- ```bash
220
- npm unlink -g scanorepo
221
- ```
222
-
223
130
  ---
224
131
 
225
- ## 🤝 Contributing
226
-
227
- Contributions are welcome! Please follow these steps:
132
+ ## License
228
133
 
229
- 1. Fork the repository
230
- 2. Create a feature branch (`git checkout -b feature/amazing-feature`)
231
- 3. Commit your changes (`git commit -m 'Add amazing feature'`)
232
- 4. Push to the branch (`git push origin feature/amazing-feature`)
233
- 5. Open a Pull Request
134
+ This project is licensed under the MIT License. Refer to the [LICENSE](LICENSE) file for additional details.
234
135
 
235
136
  ---
236
137
 
237
- ## 📄 License
238
-
239
- This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
240
-
241
- ---
242
-
243
- ## 👤 Author
138
+ ## Author
244
139
 
245
140
  **Benjamin Onyia**
246
141
 
247
- - 🌐 Portfolio: [benjamin-onyia.vercel.app](https://benjamin-onyia.vercel.app/)
248
- - 💻 GitHub: [@classicManCode](https://github.com/classicManCode)
249
-
250
- ---
251
-
252
- ## 🙏 Acknowledgments
253
-
254
- - [Groq](https://groq.com/) for ultra-fast AI inference
255
- - [Commander.js](https://github.com/tj/commander.js) for CLI framework
256
- - [Inquirer.js](https://github.com/SBoudrias/Inquirer.js) for interactive prompts
257
- - [Chalk](https://github.com/chalk/chalk) & [Ora](https://github.com/sindresorhus/ora) for beautiful terminal output
142
+ - Portfolio: [benjamin-onyia.vercel.app](https://benjamin-onyia.vercel.app/)
143
+ - GitHub: [classicManCode](https://github.com/classicManCode)
258
144
 
259
145
  ---
260
146
 
261
- <p align="center">
262
- Made with ❤️ by <a href="https://benjamin-onyia.vercel.app/">Benjamin Onyia</a>
263
- </p>
147
+ Developed by Benjamin Onyia.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "scanorepo",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "description": "Cross-platform AI-powered CLI tool for project scanning and documentation",
5
5
  "main": "dist/index.js",
6
6
  "bin": {