Skip to content

Commit a59513f

Browse files
author
Sri Dev
committed
πŸš€ Initial commit: DevPod Multi-Stack Development Environment
✨ Features: β€’ 7 complete development environments (Java, Node.js, Python, React, Angular, MERN, Angular-Java) β€’ Production-ready DevContainer configurations β€’ Automated setup and management scripts β€’ Comprehensive documentation and troubleshooting guides β€’ Working REST APIs with CRUD operations β€’ Testing frameworks and development tools pre-configured πŸ› οΈ Technology Stacks: β€’ Java 17 + Spring Boot + Maven + H2 Database β€’ Node.js 18 + Express.js + Jest testing β€’ Python 3.11 + FastAPI + SQLAlchemy + Pytest β€’ React 18 + TypeScript + Vite β€’ Angular 17 + TypeScript + Angular CLI β€’ MERN Full-stack (MongoDB + Express + React + Node) β€’ Angular-Java Full-stack (Angular + Spring Boot + PostgreSQL) 🎯 Ready for immediate development with one-click DevPod workspace launch!
0 parents  commit a59513f

71 files changed

Lines changed: 7396 additions & 0 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

β€Ž.gitignoreβ€Ž

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
# DevPod and Container files
2+
.devcontainer/.devpod/
3+
*.log
4+
.env.local
5+
6+
# Node.js
7+
node_modules/
8+
npm-debug.log*
9+
yarn-debug.log*
10+
yarn-error.log*
11+
package-lock.json
12+
.npm
13+
.yarn-integrity
14+
15+
# Python
16+
__pycache__/
17+
*.py[cod]
18+
*$py.class
19+
*.so
20+
.Python
21+
env/
22+
venv/
23+
ENV/
24+
env.bak/
25+
venv.bak/
26+
.pytest_cache/
27+
.coverage
28+
29+
# Java
30+
target/
31+
*.jar
32+
*.war
33+
*.ear
34+
*.zip
35+
*.tar.gz
36+
*.rar
37+
.gradle/
38+
build/
39+
.idea/
40+
*.iml
41+
*.ipr
42+
*.iws
43+
44+
# React/Angular
45+
dist/
46+
build/
47+
.cache/
48+
coverage/
49+
50+
# VS Code
51+
.vscode/settings.json
52+
.vscode/launch.json
53+
.vscode/extensions.json
54+
55+
# OS generated files
56+
.DS_Store
57+
.DS_Store?
58+
._*
59+
.Spotlight-V100
60+
.Trashes
61+
ehthumbs.db
62+
Thumbs.db
63+
64+
# Temporary files
65+
*.tmp
66+
*.temp
67+
*.swp
68+
*.swo
69+
*~
70+
71+
# Docker
72+
.docker/
73+
74+
# DevPod specific
75+
.devpod/

β€ŽQUICK_REFERENCE.mdβ€Ž

Lines changed: 225 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,225 @@
1+
# DevPod CLI Quick Reference Guide
2+
3+
## Installation
4+
5+
```bash
6+
# Make scripts executable
7+
chmod +x install-devpod.sh generate-devcontainer.sh complete-setup.sh
8+
9+
# Install DevPod CLI
10+
./install-devpod.sh
11+
12+
# Complete interactive setup
13+
./complete-setup.sh
14+
```
15+
16+
## Essential Commands
17+
18+
### DevPod Management
19+
```bash
20+
# Check version
21+
devpod version
22+
23+
# List workspaces
24+
devpod workspace list
25+
26+
# Start workspace
27+
devpod up <directory> --id <workspace-name>
28+
29+
# Stop workspace
30+
devpod stop <workspace-name>
31+
32+
# Delete workspace
33+
devpod delete <workspace-name>
34+
35+
# SSH into workspace
36+
devpod ssh <workspace-name>
37+
```
38+
39+
### Provider Management
40+
```bash
41+
# List providers
42+
devpod provider list
43+
44+
# Add Docker provider
45+
devpod provider add docker --use
46+
47+
# Add Kubernetes provider
48+
devpod provider add kubernetes
49+
```
50+
51+
## Quick Project Setup
52+
53+
### 1. Node.js Project
54+
```bash
55+
mkdir my-nodejs-app
56+
cd my-nodejs-app
57+
../generate-devcontainer.sh nodejs my-nodejs-app
58+
devpod up . --id nodejs-workspace
59+
```
60+
61+
### 2. Python Project
62+
```bash
63+
mkdir my-python-app
64+
cd my-python-app
65+
../generate-devcontainer.sh python my-python-app
66+
devpod up . --id python-workspace
67+
```
68+
69+
### 3. Java Project
70+
```bash
71+
mkdir my-java-app
72+
cd my-java-app
73+
../generate-devcontainer.sh java my-java-app
74+
devpod up . --id java-workspace
75+
```
76+
77+
### 4. React Project
78+
```bash
79+
mkdir my-react-app
80+
cd my-react-app
81+
../generate-devcontainer.sh react my-react-app
82+
devpod up . --id react-workspace
83+
```
84+
85+
### 5. Angular Project
86+
```bash
87+
mkdir my-angular-app
88+
cd my-angular-app
89+
../generate-devcontainer.sh angular my-angular-app
90+
devpod up . --id angular-workspace
91+
```
92+
93+
### 6. Full Stack (Angular + Java + PostgreSQL)
94+
```bash
95+
mkdir my-fullstack-app
96+
cd my-fullstack-app
97+
../generate-devcontainer.sh angular-java my-fullstack-app
98+
devpod up . --id fullstack-workspace
99+
```
100+
101+
## Working with Localhost & LAN
102+
103+
### Localhost Development
104+
```bash
105+
# Start with port forwarding
106+
devpod up ./project --forward-ports 3000,8080
107+
108+
# Access via specific IDE
109+
devpod up ./project --ide vscode
110+
devpod up ./project --ide cursor
111+
devpod up ./project --ide openvscode
112+
```
113+
114+
### LAN Development
115+
```bash
116+
# Configure remote Docker provider
117+
devpod provider add docker --option DOCKER_HOST=tcp://192.168.1.100:2376
118+
119+
# Create workspace with exposed ports
120+
devpod up ./project --provider docker --option expose-ports=true
121+
122+
# SSH access over LAN
123+
devpod ssh my-workspace --ssh-host 192.168.1.100
124+
```
125+
126+
## Default Ports by Environment
127+
128+
| Environment | Default Ports | Access URL |
129+
|-------------|---------------|------------|
130+
| Node.js | 3000, 8000 | http://localhost:3000 |
131+
| Python | 8000, 5000 | http://localhost:8000 |
132+
| Java | 8080, 8443 | http://localhost:8080 |
133+
| React | 3000, 3001 | http://localhost:3000 |
134+
| Angular | 4200, 4201 | http://localhost:4200 |
135+
| Full Stack | 4200, 8080, 5432, 8081 | Multiple endpoints |
136+
137+
## Full Stack Application URLs
138+
139+
When using the Angular + Java + PostgreSQL setup:
140+
141+
- **Frontend (Angular)**: http://localhost:4200
142+
- **Backend (Java API)**: http://localhost:8080
143+
- **Database Admin (Adminer)**: http://localhost:8081
144+
- **PostgreSQL**: localhost:5432
145+
146+
### Database Connection Details:
147+
- **Server**: postgres (from containers) or localhost (from host)
148+
- **Username**: devuser
149+
- **Password**: devpass
150+
- **Database**: devdb
151+
152+
## Troubleshooting
153+
154+
### Common Issues
155+
156+
1. **DevPod not found**:
157+
```bash
158+
echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.bashrc
159+
source ~/.bashrc
160+
```
161+
162+
2. **Docker permission denied**:
163+
```bash
164+
sudo usermod -aG docker $USER
165+
newgrp docker
166+
```
167+
168+
3. **Port already in use**:
169+
```bash
170+
devpod up ./project --forward-ports 3001,8081
171+
```
172+
173+
4. **Workspace won't start**:
174+
```bash
175+
devpod logs <workspace-name>
176+
devpod stop <workspace-name>
177+
devpod delete <workspace-name>
178+
devpod up ./project --id new-workspace-name
179+
```
180+
181+
### Useful Debugging Commands
182+
```bash
183+
# Check workspace status
184+
devpod workspace list
185+
186+
# View workspace logs
187+
devpod logs <workspace-name>
188+
189+
# Restart workspace
190+
devpod stop <workspace-name>
191+
devpod up ./project --id <workspace-name>
192+
193+
# Clean up unused resources
194+
docker system prune -f
195+
```
196+
197+
## File Structure
198+
199+
After running the setup, you'll have:
200+
201+
```
202+
dev-pod-cli-ws/
203+
β”œβ”€β”€ requirements.md # This documentation
204+
β”œβ”€β”€ install-devpod.sh # DevPod installation script
205+
β”œβ”€β”€ generate-devcontainer.sh # DevContainer generator
206+
β”œβ”€β”€ complete-setup.sh # Interactive setup menu
207+
β”œβ”€β”€ QUICK_REFERENCE.md # This file
208+
└── <your-projects>/ # Generated project directories
209+
└── .devcontainer/
210+
└── devcontainer.json # DevContainer configuration
211+
```
212+
213+
## Next Steps
214+
215+
1. **Start with installation**: `./install-devpod.sh`
216+
2. **Try the interactive setup**: `./complete-setup.sh`
217+
3. **Create a simple project**: Choose option 1 (Node.js) from the menu
218+
4. **Explore the workspace**: Once created, VS Code will open in the container
219+
5. **Develop normally**: Edit files, run commands, debug as usual
220+
221+
## Resources
222+
223+
- **DevPod Documentation**: https://devpod.sh/docs
224+
- **DevContainer Specification**: https://containers.dev/
225+
- **VS Code DevContainers**: https://code.visualstudio.com/docs/devcontainers/containers

0 commit comments

Comments
Β (0)