scanorepo 1.0.0 → 1.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.
- package/README.md +56 -170
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,28 +1,26 @@
|
|
|
1
|
-
#
|
|
1
|
+
# ScanoRepo
|
|
2
2
|
|
|
3
|
-
> **AI-powered CLI tool for
|
|
3
|
+
> **AI-powered CLI tool for project scanning and documentation generation.**
|
|
4
4
|
|
|
5
|
-
ScanoRepo is a cross-platform command-line
|
|
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.
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-

|
|
9
|
-

|
|
7
|
+
**Official Website:** [scano-repo-gui.vercel.app](https://scano-repo-gui.vercel.app/)
|
|
10
8
|
|
|
11
9
|
---
|
|
12
10
|
|
|
13
|
-
##
|
|
11
|
+
## Features
|
|
14
12
|
|
|
15
|
-
-
|
|
16
|
-
-
|
|
17
|
-
-
|
|
18
|
-
-
|
|
19
|
-
-
|
|
13
|
+
- **Project Scanning** - Analyzes repositories for missing npm scripts, environment variables, dependencies, and TypeScript configuration discrepancies.
|
|
14
|
+
- **AI-Powered Insights** - Utilizes Groq's high-performance inference engine to provide technical explanations and recommended solutions for detected issues.
|
|
15
|
+
- **Automated Documentation** - Generates a structured `SCANNED.md` file summarizing project architecture, key components, and deployment procedures.
|
|
16
|
+
- **Dependency Management** - Provides an interactive interface to install, update, and audit project packages.
|
|
17
|
+
- **Cross-Platform Compatibility** - Fully supported on Windows, macOS, and Linux environments.
|
|
20
18
|
|
|
21
19
|
---
|
|
22
20
|
|
|
23
|
-
##
|
|
21
|
+
## Installation
|
|
24
22
|
|
|
25
|
-
### Global Installation
|
|
23
|
+
### Global Installation
|
|
26
24
|
|
|
27
25
|
```bash
|
|
28
26
|
npm install -g scanorepo
|
|
@@ -40,224 +38,112 @@ npm link
|
|
|
40
38
|
|
|
41
39
|
---
|
|
42
40
|
|
|
43
|
-
##
|
|
41
|
+
## Zero Configuration
|
|
44
42
|
|
|
45
|
-
ScanoRepo
|
|
43
|
+
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.
|
|
46
44
|
|
|
47
|
-
|
|
45
|
+
### Operational Overview
|
|
48
46
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
3. The backend processes the request using Groq's high-performance models.
|
|
54
|
-
4. You receive instant insights in your terminal.
|
|
47
|
+
1. An audit command is initiated by the user.
|
|
48
|
+
2. ScanoRepo transmits project metadata to a secure backend infrastructure.
|
|
49
|
+
3. The backend processes the request using high-performance large language models.
|
|
50
|
+
4. Actionable technical insights are returned directly to the terminal interface.
|
|
55
51
|
|
|
56
52
|
---
|
|
57
53
|
|
|
58
|
-
##
|
|
54
|
+
## Usage
|
|
59
55
|
|
|
60
|
-
Navigate to
|
|
56
|
+
Navigate to the target Node.js project directory and execute:
|
|
61
57
|
|
|
62
58
|
```bash
|
|
63
|
-
cd /path/to/your/project
|
|
64
59
|
scanorepo <command>
|
|
65
60
|
```
|
|
66
61
|
|
|
67
62
|
### Available Commands
|
|
68
63
|
|
|
69
|
-
| Command | Description
|
|
70
|
-
| --------------------- |
|
|
71
|
-
| `scanorepo scan` |
|
|
72
|
-
| `scanorepo doc` | Generate `SCANNED.md` documentation using AI |
|
|
73
|
-
| `scanorepo deps` | Interactive dependency management
|
|
74
|
-
| `scanorepo check` |
|
|
75
|
-
| `scanorepo --help` | Display
|
|
76
|
-
| `scanorepo --version` | Display version
|
|
64
|
+
| Command | Description |
|
|
65
|
+
| --------------------- | --------------------------------------------------------------------- |
|
|
66
|
+
| `scanorepo scan` | Audit project for configuration issues with AI-assisted explanations. |
|
|
67
|
+
| `scanorepo doc` | Generate `SCANNED.md` documentation using AI analysis. |
|
|
68
|
+
| `scanorepo deps` | Interactive dependency management and auditing. |
|
|
69
|
+
| `scanorepo check` | Comprehensive health check (Sequential execution of scan and doc). |
|
|
70
|
+
| `scanorepo --help` | Display command reference. |
|
|
71
|
+
| `scanorepo --version` | Display current version information. |
|
|
77
72
|
|
|
78
73
|
---
|
|
79
74
|
|
|
80
|
-
##
|
|
75
|
+
## Command Details
|
|
81
76
|
|
|
82
77
|
### `scanorepo scan`
|
|
83
78
|
|
|
84
|
-
|
|
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
|
|
90
|
-
|
|
91
|
-
**Example Output:**
|
|
79
|
+
Performs a diagnostic audit of the project:
|
|
92
80
|
|
|
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
|
-
```
|
|
81
|
+
- **Script Analysis** - Verifies presence of standard scripts such as `start`, `dev`, `build`, and `test`.
|
|
82
|
+
- **Environment Verification** - Detects absence of `.env` files and suggests templates.
|
|
83
|
+
- **TypeScript Configuration** - Identifies `.ts` source files lacking an associated `tsconfig.json`.
|
|
84
|
+
- **Dependency Integrity** - Validates the state of the `node_modules` directory.
|
|
111
85
|
|
|
112
86
|
### `scanorepo doc`
|
|
113
87
|
|
|
114
|
-
Analyzes
|
|
88
|
+
Analyzes the repository structure to produce a professional `SCANNED.md` file, providing:
|
|
115
89
|
|
|
116
|
-
-
|
|
117
|
-
-
|
|
118
|
-
-
|
|
90
|
+
- Technical project overview.
|
|
91
|
+
- Functional breakdown of key directories and files.
|
|
92
|
+
- Standardized onboarding and installation instructions.
|
|
119
93
|
|
|
120
94
|
### `scanorepo deps`
|
|
121
95
|
|
|
122
|
-
|
|
96
|
+
Initiates an interactive management interface:
|
|
123
97
|
|
|
124
|
-
|
|
125
|
-
|
|
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`
|
|
136
|
-
|
|
137
|
-
Runs both `scan` and `doc` commands in sequence for a complete project audit.
|
|
98
|
+
- Automatically detects preferred package managers (npm or yarn).
|
|
99
|
+
- Facilitates secure package installation, updates, and outdated package auditing.
|
|
138
100
|
|
|
139
101
|
---
|
|
140
102
|
|
|
141
|
-
##
|
|
103
|
+
## Operational Constraints
|
|
142
104
|
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
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
|
-
```
|
|
105
|
+
- **Node.js Environment** - ScanoRepo is optimized for projects containing a valid `package.json`.
|
|
106
|
+
- **Inference Variability** - AI-generated explanations are intended for assistance and may vary between executions.
|
|
107
|
+
- **Build Requirements** - When modifying the source, ensure a fresh build is generated via `npm run build`.
|
|
164
108
|
|
|
165
109
|
---
|
|
166
110
|
|
|
167
|
-
##
|
|
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
|
|
183
|
-
|
|
184
|
-
AI responses may vary between runs. The insights are meant to be helpful, not definitive.
|
|
185
|
-
|
|
186
|
-
### ❌ Don't skip the build step
|
|
111
|
+
## Development
|
|
187
112
|
|
|
188
|
-
|
|
113
|
+
### Assembly
|
|
189
114
|
|
|
190
115
|
```bash
|
|
191
116
|
npm run build
|
|
192
117
|
```
|
|
193
118
|
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
## 🛠️ Development
|
|
197
|
-
|
|
198
|
-
### Build the project
|
|
199
|
-
|
|
200
|
-
```bash
|
|
201
|
-
npm run build
|
|
202
|
-
```
|
|
203
|
-
|
|
204
|
-
### Run in development mode
|
|
119
|
+
### Debugging
|
|
205
120
|
|
|
206
121
|
```bash
|
|
207
122
|
npm run dev
|
|
208
123
|
```
|
|
209
124
|
|
|
210
|
-
###
|
|
125
|
+
### Local Testing
|
|
211
126
|
|
|
212
127
|
```bash
|
|
213
128
|
npm link
|
|
214
129
|
scanorepo scan
|
|
215
130
|
```
|
|
216
131
|
|
|
217
|
-
### Unlink when done
|
|
218
|
-
|
|
219
|
-
```bash
|
|
220
|
-
npm unlink -g scanorepo
|
|
221
|
-
```
|
|
222
|
-
|
|
223
|
-
---
|
|
224
|
-
|
|
225
|
-
## 🤝 Contributing
|
|
226
|
-
|
|
227
|
-
Contributions are welcome! Please follow these steps:
|
|
228
|
-
|
|
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
|
|
234
|
-
|
|
235
132
|
---
|
|
236
133
|
|
|
237
|
-
##
|
|
134
|
+
## License
|
|
238
135
|
|
|
239
|
-
This project is licensed under the MIT License
|
|
136
|
+
This project is licensed under the MIT License. Refer to the [LICENSE](LICENSE) file for additional details.
|
|
240
137
|
|
|
241
138
|
---
|
|
242
139
|
|
|
243
|
-
##
|
|
140
|
+
## Author
|
|
244
141
|
|
|
245
142
|
**Benjamin Onyia**
|
|
246
143
|
|
|
247
|
-
-
|
|
248
|
-
-
|
|
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
|
|
144
|
+
- Portfolio: [benjamin-onyia.vercel.app](https://benjamin-onyia.vercel.app/)
|
|
145
|
+
- GitHub: [classicManCode](https://github.com/classicManCode)
|
|
258
146
|
|
|
259
147
|
---
|
|
260
148
|
|
|
261
|
-
|
|
262
|
-
Made with ❤️ by <a href="https://benjamin-onyia.vercel.app/">Benjamin Onyia</a>
|
|
263
|
-
</p>
|
|
149
|
+
Developed by Benjamin Onyia.
|