smart-devenv 2.1.0__tar.gz

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 (38) hide show
  1. smart_devenv-2.1.0/PKG-INFO +361 -0
  2. smart_devenv-2.1.0/README.md +322 -0
  3. smart_devenv-2.1.0/devenv/__init__.py +33 -0
  4. smart_devenv-2.1.0/devenv/__main__.py +9 -0
  5. smart_devenv-2.1.0/devenv/cli.py +62 -0
  6. smart_devenv-2.1.0/devenv/cli_utils/__init__.py +8 -0
  7. smart_devenv-2.1.0/devenv/cli_utils/cli_utils.py +119 -0
  8. smart_devenv-2.1.0/devenv/cli_utils/docker_utils.py +189 -0
  9. smart_devenv-2.1.0/devenv/cli_utils/os_utils.py +411 -0
  10. smart_devenv-2.1.0/devenv/cli_utils/project_utils.py +40 -0
  11. smart_devenv-2.1.0/devenv/cli_utils/runtime_utils.py +150 -0
  12. smart_devenv-2.1.0/devenv/cli_utils/security.py +112 -0
  13. smart_devenv-2.1.0/devenv/commands/__init__.py +8 -0
  14. smart_devenv-2.1.0/devenv/commands/doctor.py +215 -0
  15. smart_devenv-2.1.0/devenv/commands/info.py +125 -0
  16. smart_devenv-2.1.0/devenv/commands/install.py +232 -0
  17. smart_devenv-2.1.0/devenv/commands/run.py +123 -0
  18. smart_devenv-2.1.0/devenv/commands/scan.py +116 -0
  19. smart_devenv-2.1.0/devenv/commands/setup.py +349 -0
  20. smart_devenv-2.1.0/devenv/commands/summary.py +63 -0
  21. smart_devenv-2.1.0/devenv/detector.py +148 -0
  22. smart_devenv-2.1.0/devenv/dev_server.py +569 -0
  23. smart_devenv-2.1.0/devenv/env_manager.py +134 -0
  24. smart_devenv-2.1.0/devenv/installer.py +136 -0
  25. smart_devenv-2.1.0/devenv/multi_project.py +460 -0
  26. smart_devenv-2.1.0/devenv/project_summary.py +442 -0
  27. smart_devenv-2.1.0/devenv/scanner.py +170 -0
  28. smart_devenv-2.1.0/devenv/service_detector.py +465 -0
  29. smart_devenv-2.1.0/devenv/utils.py +363 -0
  30. smart_devenv-2.1.0/devenv/version_parser.py +185 -0
  31. smart_devenv-2.1.0/pyproject.toml +80 -0
  32. smart_devenv-2.1.0/setup.cfg +4 -0
  33. smart_devenv-2.1.0/smart_devenv.egg-info/PKG-INFO +361 -0
  34. smart_devenv-2.1.0/smart_devenv.egg-info/SOURCES.txt +36 -0
  35. smart_devenv-2.1.0/smart_devenv.egg-info/dependency_links.txt +1 -0
  36. smart_devenv-2.1.0/smart_devenv.egg-info/entry_points.txt +2 -0
  37. smart_devenv-2.1.0/smart_devenv.egg-info/requires.txt +8 -0
  38. smart_devenv-2.1.0/smart_devenv.egg-info/top_level.txt +1 -0
@@ -0,0 +1,361 @@
1
+ Metadata-Version: 2.4
2
+ Name: smart-devenv
3
+ Version: 2.1.0
4
+ Summary: Production-grade CLI tool for automatic project environment setup, dependency installation, and DevOps automation
5
+ Author: DEVENV Contributors
6
+ License: MIT
7
+ Project-URL: Homepage, https://github.com/devenv-cli/devenv
8
+ Project-URL: Repository, https://github.com/devenv-cli/devenv
9
+ Project-URL: Issues, https://github.com/devenv-cli/devenv/issues
10
+ Project-URL: Documentation, https://github.com/devenv-cli/devenv#readme
11
+ Project-URL: Changelog, https://github.com/devenv-cli/devenv/releases
12
+ Keywords: cli,dependency,installer,devtools,automation,devops,environment,docker,monorepo,microservices,developer-experience,project-setup,service-detection,health-check
13
+ Classifier: Development Status :: 5 - Production/Stable
14
+ Classifier: Environment :: Console
15
+ Classifier: Intended Audience :: Developers
16
+ Classifier: Intended Audience :: System Administrators
17
+ Classifier: License :: OSI Approved :: MIT License
18
+ Classifier: Operating System :: OS Independent
19
+ Classifier: Programming Language :: Python :: 3
20
+ Classifier: Programming Language :: Python :: 3.8
21
+ Classifier: Programming Language :: Python :: 3.9
22
+ Classifier: Programming Language :: Python :: 3.10
23
+ Classifier: Programming Language :: Python :: 3.11
24
+ Classifier: Programming Language :: Python :: 3.12
25
+ Classifier: Programming Language :: Python :: 3.13
26
+ Classifier: Topic :: Software Development :: Build Tools
27
+ Classifier: Topic :: System :: Installation/Setup
28
+ Classifier: Topic :: System :: Systems Administration
29
+ Classifier: Topic :: Utilities
30
+ Requires-Python: >=3.8
31
+ Description-Content-Type: text/markdown
32
+ Requires-Dist: typer[all]>=0.9.0
33
+ Requires-Dist: rich>=13.0.0
34
+ Provides-Extra: dev
35
+ Requires-Dist: pytest>=7.0.0; extra == "dev"
36
+ Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
37
+ Requires-Dist: mypy>=1.0.0; extra == "dev"
38
+ Requires-Dist: ruff>=0.1.0; extra == "dev"
39
+
40
+ DevEnv – Automatic Development Environment Setup
41
+
42
+ "PyPI" (https://img.shields.io/pypi/v/devenv)
43
+ "Python" (https://img.shields.io/pypi/pyversions/devenv)
44
+ "License" (https://img.shields.io/github/license/Aakashsingh0388/devenv)
45
+
46
+ DevEnv is an intelligent CLI tool that automatically sets up development environments for your projects. It detects the project language, installs required runtimes, installs dependencies, and prepares the project to run β€” all with a single command.
47
+
48
+ DevEnv is designed to eliminate the common β€œit works on my machine” problem and simplify onboarding for developers across Windows, macOS, and Linux.
49
+
50
+ ---
51
+
52
+ πŸš€ Features
53
+
54
+ - One-Command Environment Setup
55
+ Run "devenv setup" and DevEnv will configure your development environment automatically.
56
+
57
+ - Smart Runtime Detection
58
+ Detects required runtimes such as Python, Node.js, and Go and installs them if they are missing.
59
+
60
+ - Automatic Dependency Installation
61
+ Installs dependencies using the correct package manager automatically.
62
+
63
+ - Cross-Platform Support
64
+ Works seamlessly across Windows, macOS, and Linux.
65
+
66
+ - Intelligent Run Command Detection
67
+ Detects how to start the project and suggests the correct run command.
68
+
69
+ - Developer Onboarding Simplified
70
+ New developers can clone a repository and start working in seconds.
71
+
72
+ ---
73
+
74
+ πŸ“¦ Installation
75
+
76
+ Install DevEnv using pip:
77
+
78
+ pip install devenv
79
+
80
+ Verify installation:
81
+
82
+ devenv --version
83
+
84
+ ---
85
+
86
+ ⚑ Quick Start
87
+
88
+ Clone a repository and set up the development environment instantly.
89
+
90
+ git clone https://github.com/example/project.git
91
+ cd project
92
+
93
+ devenv setup
94
+
95
+ DevEnv will automatically:
96
+
97
+ 1. Detect project language
98
+ 2. Check required runtimes
99
+ 3. Install missing runtimes
100
+ 4. Install dependencies
101
+ 5. Apply OS compatibility fixes
102
+ 6. Suggest the correct run command
103
+
104
+ ---
105
+
106
+ 🧠 Supported Languages
107
+
108
+ DevEnv automatically detects projects for:
109
+
110
+ - Python
111
+ - Node.js
112
+ - Go
113
+
114
+ Supported dependency files include:
115
+
116
+ - "requirements.txt"
117
+ - "pyproject.toml"
118
+ - "package.json"
119
+ - "go.mod"
120
+
121
+ ---
122
+
123
+ πŸ›  Commands
124
+
125
+ DevEnv provides several commands to manage and automate development environments.
126
+
127
+ ---
128
+
129
+ devenv setup
130
+
131
+ The primary command that fully prepares the development environment.
132
+
133
+ Usage
134
+
135
+ devenv setup [OPTIONS]
136
+
137
+ Options
138
+
139
+ Option| Description
140
+ "-p", "--path"| Path to project directory
141
+ "-n", "--dry-run"| Show actions without executing them
142
+ "-y", "--yes"| Skip confirmation prompts
143
+
144
+ Example 1 – Basic Setup
145
+
146
+ cd my-project
147
+ devenv setup
148
+
149
+ Example 2 – Setup specific project folder
150
+
151
+ devenv setup --path ./backend
152
+
153
+ Example 3 – Dry run
154
+
155
+ devenv setup --dry-run
156
+
157
+ This will show what commands DevEnv would run without executing them.
158
+
159
+ ---
160
+
161
+ devenv scan
162
+
163
+ Scans the project directory and detects languages and dependency files.
164
+
165
+ Usage
166
+
167
+ devenv scan [OPTIONS]
168
+
169
+ Options
170
+
171
+ Option| Description
172
+ "-p", "--path"| Project directory
173
+ "-d", "--depth"| Scan depth for subdirectories
174
+
175
+ Example
176
+
177
+ devenv scan
178
+
179
+ Example output:
180
+
181
+ Detected Project
182
+
183
+ Language: Python
184
+ Dependency File: requirements.txt
185
+ Package Manager: pip
186
+
187
+ Scan a specific folder:
188
+
189
+ devenv scan --path ./services
190
+
191
+ ---
192
+
193
+ devenv install
194
+
195
+ Installs project dependencies using the detected package manager.
196
+
197
+ Usage
198
+
199
+ devenv install [OPTIONS]
200
+
201
+ Options
202
+
203
+ Option| Description
204
+ "-p", "--path"| Project directory
205
+ "-n", "--dry-run"| Show install command only
206
+ "-y", "--yes"| Skip confirmation
207
+
208
+ Example – Python Project
209
+
210
+ devenv install
211
+
212
+ Equivalent to:
213
+
214
+ pip install -r requirements.txt
215
+
216
+ Example – Node.js Project
217
+
218
+ devenv install
219
+
220
+ Equivalent to:
221
+
222
+ npm install
223
+
224
+ ---
225
+
226
+ devenv run
227
+
228
+ Detects and runs the appropriate development server command.
229
+
230
+ Usage
231
+
232
+ devenv run [OPTIONS]
233
+
234
+ Options
235
+
236
+ Option| Description
237
+ "-p", "--path"| Project directory
238
+ "-y", "--yes"| Automatically run the detected command
239
+
240
+ Example – Run project
241
+
242
+ devenv run
243
+
244
+ Example detected commands:
245
+
246
+ Project Type| Command
247
+ Flask| "flask run"
248
+ FastAPI| "uvicorn main:app"
249
+ Node.js| "npm start"
250
+ Next.js| "npm run dev"
251
+
252
+ Example automatic run:
253
+
254
+ devenv run --yes
255
+
256
+ ---
257
+
258
+ devenv doctor
259
+
260
+ Checks your system environment and verifies installed runtimes.
261
+
262
+ Usage
263
+
264
+ devenv doctor
265
+
266
+ Example output:
267
+
268
+ System Runtime Check
269
+
270
+ Python βœ” Installed (3.11)
271
+ Node.js βœ” Installed (20)
272
+ Go ✘ Not Installed
273
+
274
+ This command helps ensure your machine is ready for development.
275
+
276
+ ---
277
+
278
+ devenv info
279
+
280
+ Displays detailed information about the detected project.
281
+
282
+ Usage
283
+
284
+ devenv info
285
+
286
+ Example output:
287
+
288
+ Project Information
289
+
290
+ Language: Python
291
+ Package Manager: pip
292
+ Dependency File: requirements.txt
293
+ Python Version: 3.11
294
+
295
+ ---
296
+
297
+ devenv summary
298
+
299
+ Provides a quick summary of the project configuration.
300
+
301
+ Usage
302
+
303
+ devenv summary
304
+
305
+ Example output:
306
+
307
+ Project Summary
308
+
309
+ Language: Node.js
310
+ Dependency File: package.json
311
+ Dependencies: 52
312
+ Package Manager: npm
313
+
314
+ ---
315
+
316
+ πŸ§‘β€πŸ’» Typical Developer Workflow
317
+
318
+ Most developers will use DevEnv like this:
319
+
320
+ pip install devenv
321
+
322
+ git clone https://github.com/example/project.git
323
+ cd project
324
+
325
+ devenv setup
326
+
327
+ devenv run
328
+
329
+ Your development environment will be ready in seconds.
330
+
331
+ ---
332
+
333
+ 🌍 Cross Platform Support
334
+
335
+ DevEnv works on:
336
+
337
+ - Windows
338
+ - macOS
339
+ - Linux
340
+
341
+ It automatically handles OS-specific configurations such as executable permissions and shell compatibility.
342
+
343
+ ---
344
+
345
+ πŸ‘¨β€πŸ’» Author
346
+
347
+ Aakash Birendra Singh
348
+
349
+ GitHub
350
+ https://github.com/Aakashsingh0388
351
+
352
+ LinkedIn
353
+ https://www.linkedin.com/in/aakash-singh-7b8416318
354
+
355
+ ---
356
+
357
+ ⭐ Contributing
358
+
359
+ Contributions, ideas, and improvements are welcome.
360
+
361
+ If you find a bug or have a feature request, feel free to open an issue or submit a pull request.
@@ -0,0 +1,322 @@
1
+ DevEnv – Automatic Development Environment Setup
2
+
3
+ "PyPI" (https://img.shields.io/pypi/v/devenv)
4
+ "Python" (https://img.shields.io/pypi/pyversions/devenv)
5
+ "License" (https://img.shields.io/github/license/Aakashsingh0388/devenv)
6
+
7
+ DevEnv is an intelligent CLI tool that automatically sets up development environments for your projects. It detects the project language, installs required runtimes, installs dependencies, and prepares the project to run β€” all with a single command.
8
+
9
+ DevEnv is designed to eliminate the common β€œit works on my machine” problem and simplify onboarding for developers across Windows, macOS, and Linux.
10
+
11
+ ---
12
+
13
+ πŸš€ Features
14
+
15
+ - One-Command Environment Setup
16
+ Run "devenv setup" and DevEnv will configure your development environment automatically.
17
+
18
+ - Smart Runtime Detection
19
+ Detects required runtimes such as Python, Node.js, and Go and installs them if they are missing.
20
+
21
+ - Automatic Dependency Installation
22
+ Installs dependencies using the correct package manager automatically.
23
+
24
+ - Cross-Platform Support
25
+ Works seamlessly across Windows, macOS, and Linux.
26
+
27
+ - Intelligent Run Command Detection
28
+ Detects how to start the project and suggests the correct run command.
29
+
30
+ - Developer Onboarding Simplified
31
+ New developers can clone a repository and start working in seconds.
32
+
33
+ ---
34
+
35
+ πŸ“¦ Installation
36
+
37
+ Install DevEnv using pip:
38
+
39
+ pip install devenv
40
+
41
+ Verify installation:
42
+
43
+ devenv --version
44
+
45
+ ---
46
+
47
+ ⚑ Quick Start
48
+
49
+ Clone a repository and set up the development environment instantly.
50
+
51
+ git clone https://github.com/example/project.git
52
+ cd project
53
+
54
+ devenv setup
55
+
56
+ DevEnv will automatically:
57
+
58
+ 1. Detect project language
59
+ 2. Check required runtimes
60
+ 3. Install missing runtimes
61
+ 4. Install dependencies
62
+ 5. Apply OS compatibility fixes
63
+ 6. Suggest the correct run command
64
+
65
+ ---
66
+
67
+ 🧠 Supported Languages
68
+
69
+ DevEnv automatically detects projects for:
70
+
71
+ - Python
72
+ - Node.js
73
+ - Go
74
+
75
+ Supported dependency files include:
76
+
77
+ - "requirements.txt"
78
+ - "pyproject.toml"
79
+ - "package.json"
80
+ - "go.mod"
81
+
82
+ ---
83
+
84
+ πŸ›  Commands
85
+
86
+ DevEnv provides several commands to manage and automate development environments.
87
+
88
+ ---
89
+
90
+ devenv setup
91
+
92
+ The primary command that fully prepares the development environment.
93
+
94
+ Usage
95
+
96
+ devenv setup [OPTIONS]
97
+
98
+ Options
99
+
100
+ Option| Description
101
+ "-p", "--path"| Path to project directory
102
+ "-n", "--dry-run"| Show actions without executing them
103
+ "-y", "--yes"| Skip confirmation prompts
104
+
105
+ Example 1 – Basic Setup
106
+
107
+ cd my-project
108
+ devenv setup
109
+
110
+ Example 2 – Setup specific project folder
111
+
112
+ devenv setup --path ./backend
113
+
114
+ Example 3 – Dry run
115
+
116
+ devenv setup --dry-run
117
+
118
+ This will show what commands DevEnv would run without executing them.
119
+
120
+ ---
121
+
122
+ devenv scan
123
+
124
+ Scans the project directory and detects languages and dependency files.
125
+
126
+ Usage
127
+
128
+ devenv scan [OPTIONS]
129
+
130
+ Options
131
+
132
+ Option| Description
133
+ "-p", "--path"| Project directory
134
+ "-d", "--depth"| Scan depth for subdirectories
135
+
136
+ Example
137
+
138
+ devenv scan
139
+
140
+ Example output:
141
+
142
+ Detected Project
143
+
144
+ Language: Python
145
+ Dependency File: requirements.txt
146
+ Package Manager: pip
147
+
148
+ Scan a specific folder:
149
+
150
+ devenv scan --path ./services
151
+
152
+ ---
153
+
154
+ devenv install
155
+
156
+ Installs project dependencies using the detected package manager.
157
+
158
+ Usage
159
+
160
+ devenv install [OPTIONS]
161
+
162
+ Options
163
+
164
+ Option| Description
165
+ "-p", "--path"| Project directory
166
+ "-n", "--dry-run"| Show install command only
167
+ "-y", "--yes"| Skip confirmation
168
+
169
+ Example – Python Project
170
+
171
+ devenv install
172
+
173
+ Equivalent to:
174
+
175
+ pip install -r requirements.txt
176
+
177
+ Example – Node.js Project
178
+
179
+ devenv install
180
+
181
+ Equivalent to:
182
+
183
+ npm install
184
+
185
+ ---
186
+
187
+ devenv run
188
+
189
+ Detects and runs the appropriate development server command.
190
+
191
+ Usage
192
+
193
+ devenv run [OPTIONS]
194
+
195
+ Options
196
+
197
+ Option| Description
198
+ "-p", "--path"| Project directory
199
+ "-y", "--yes"| Automatically run the detected command
200
+
201
+ Example – Run project
202
+
203
+ devenv run
204
+
205
+ Example detected commands:
206
+
207
+ Project Type| Command
208
+ Flask| "flask run"
209
+ FastAPI| "uvicorn main:app"
210
+ Node.js| "npm start"
211
+ Next.js| "npm run dev"
212
+
213
+ Example automatic run:
214
+
215
+ devenv run --yes
216
+
217
+ ---
218
+
219
+ devenv doctor
220
+
221
+ Checks your system environment and verifies installed runtimes.
222
+
223
+ Usage
224
+
225
+ devenv doctor
226
+
227
+ Example output:
228
+
229
+ System Runtime Check
230
+
231
+ Python βœ” Installed (3.11)
232
+ Node.js βœ” Installed (20)
233
+ Go ✘ Not Installed
234
+
235
+ This command helps ensure your machine is ready for development.
236
+
237
+ ---
238
+
239
+ devenv info
240
+
241
+ Displays detailed information about the detected project.
242
+
243
+ Usage
244
+
245
+ devenv info
246
+
247
+ Example output:
248
+
249
+ Project Information
250
+
251
+ Language: Python
252
+ Package Manager: pip
253
+ Dependency File: requirements.txt
254
+ Python Version: 3.11
255
+
256
+ ---
257
+
258
+ devenv summary
259
+
260
+ Provides a quick summary of the project configuration.
261
+
262
+ Usage
263
+
264
+ devenv summary
265
+
266
+ Example output:
267
+
268
+ Project Summary
269
+
270
+ Language: Node.js
271
+ Dependency File: package.json
272
+ Dependencies: 52
273
+ Package Manager: npm
274
+
275
+ ---
276
+
277
+ πŸ§‘β€πŸ’» Typical Developer Workflow
278
+
279
+ Most developers will use DevEnv like this:
280
+
281
+ pip install devenv
282
+
283
+ git clone https://github.com/example/project.git
284
+ cd project
285
+
286
+ devenv setup
287
+
288
+ devenv run
289
+
290
+ Your development environment will be ready in seconds.
291
+
292
+ ---
293
+
294
+ 🌍 Cross Platform Support
295
+
296
+ DevEnv works on:
297
+
298
+ - Windows
299
+ - macOS
300
+ - Linux
301
+
302
+ It automatically handles OS-specific configurations such as executable permissions and shell compatibility.
303
+
304
+ ---
305
+
306
+ πŸ‘¨β€πŸ’» Author
307
+
308
+ Aakash Birendra Singh
309
+
310
+ GitHub
311
+ https://github.com/Aakashsingh0388
312
+
313
+ LinkedIn
314
+ https://www.linkedin.com/in/aakash-singh-7b8416318
315
+
316
+ ---
317
+
318
+ ⭐ Contributing
319
+
320
+ Contributions, ideas, and improvements are welcome.
321
+
322
+ If you find a bug or have a feature request, feel free to open an issue or submit a pull request.
@@ -0,0 +1,33 @@
1
+ """
2
+ DEVENV -- Automatic Project Environment Setup & Dependency Installer
3
+
4
+ A production-grade CLI tool that scans a developer's project directory,
5
+ detects the programming language and package manager in use, verifies
6
+ that the required runtime is available, manages environment files,
7
+ detects Docker configurations, performs security checks, and installs
8
+ dependencies automatically.
9
+
10
+ Supported ecosystems:
11
+ Node.js, Python, Go, Rust, Java (Maven/Gradle), PHP, Ruby,
12
+ .NET, Terraform, Docker
13
+
14
+ Commands:
15
+ devenv scan -- Scan and report project structure
16
+ devenv install -- Install dependencies for detected projects
17
+ devenv doctor -- Comprehensive health check (runtimes, services, docker)
18
+ devenv run -- Start the project's dev server or main process
19
+ devenv info -- Display detailed project metadata
20
+ devenv summary -- Quick project summary with all key information
21
+
22
+ Features:
23
+ - Multi-project / monorepo support
24
+ - Service detection (PostgreSQL, Redis, MongoDB, Kafka, etc.)
25
+ - Smart dev server detection and startup
26
+ - Comprehensive project health checks
27
+ - Docker and Docker Compose integration
28
+
29
+ The package exposes a Typer-based CLI app via :pydata:`cli.app`.
30
+ """
31
+
32
+ __version__ = "2.1.0"
33
+ __app_name__ = "devenv"
@@ -0,0 +1,9 @@
1
+ """
2
+ Allow invocation via ``python -m devenv``.
3
+
4
+ This module simply delegates to the Typer CLI app defined in ``cli.py``.
5
+ """
6
+
7
+ from devenv.cli import app
8
+
9
+ app()