Welcome to your comprehensive development workspace! This directory contains all the documentation you need to effectively use and maintain your development environment.
- Getting Started
- Workspace Structure
- Available Tools
- Project Creation
- Common Commands
- Configuration
- Troubleshooting
- Contributing
-
Initialize the workspace
source ./init.sh
-
Check dependencies
./scripts/check-deps.sh
-
Create your first project
make new-project NAME=my-first-app TYPE=python
-
Activate the environment
source ./init.sh --quiet
-
Check what's available
make help
-
Start coding!
vibe-coding/
βββ π projects/ # Your development projects
βββ π tools/ # Development tools and environments
β βββ python-env/ # Python packages and tools
β βββ node-env/ # Node.js packages and tools
β βββ requirements.txt # Python package list
βββ π scripts/ # Utility scripts
β βββ new-project.sh # Create new projects
β βββ backup.sh # Backup your work
β βββ clean.sh # Clean temporary files
β βββ check-deps.sh # Check dependencies
βββ π configs/ # Configuration files
β βββ .editorconfig # Editor settings
βββ π templates/ # Project templates
β βββ python-project-structure/
β βββ node-project-structure/
β βββ .gitignore # Comprehensive gitignore
β βββ README.md # README template
β βββ Dockerfile # Docker template
β βββ docker-compose.yml
β βββ .env.example # Environment variables template
β βββ html-boilerplate/ # Static website templates
βββ π docs/ # Documentation (this directory)
βββ π sandbox/ # Experimental and temporary work
βββ π backups/ # Automatic backups
βββ π§ init.sh # Environment initialization script
βββ π§ Makefile # Common commands and tasks
βββ π .gitignore # Git ignore rules
βββ π .gitconfig # Git configuration and aliases
- Runtime: Python 3.12.3
- Package Manager: pip
- Packages: numpy, pandas, requests, fastapi, flask, jupyter, pytest, black, flake8, and more
- Location:
~/.local/bin
(added to PATH)
- Runtime: Node.js v22.20.0
- Package Manager: npm 11.6.1
- Packages: typescript, eslint, prettier, jest, react, vue, express, and more
- Location:
tools/node-env/node_modules/.bin
- Git: Version control with useful aliases
- Make: Build automation and common tasks
- EditorConfig: Consistent coding styles across editors
# Using Make (recommended)
make new-project NAME=my-app TYPE=python
# Using script directly
./scripts/new-project.sh my-app python
Type | Description | Technologies |
---|---|---|
python |
Python application with FastAPI | Python, FastAPI, pytest, black |
node |
Node.js application with Express | Node.js, Express, Jest, ESLint |
static |
Static website | HTML, CSS, JavaScript |
react |
React application | React, TypeScript, Vite |
vue |
Vue.js application | Vue.js, TypeScript, Vite |
Python Project:
my-python-app/
βββ src/my_python_app/
β βββ main.py
β βββ config.py
β βββ api/
βββ tests/
βββ pyproject.toml
βββ requirements.txt
βββ README.md
Node.js Project:
my-node-app/
βββ src/
β βββ index.js
β βββ controllers/
β βββ routes/
βββ tests/
βββ package.json
βββ README.md
# Show all available commands
make help
# Check workspace status
make status
# Check all dependencies
make check-deps
# Clean temporary files
make clean
# Create backup
make backup
# Initialize environment
source ./init.sh
# Create a new project
make new-project NAME=myapp TYPE=python
# Install dependencies
make install-python # Python packages
make install-node # Node.js packages
# Code quality
make lint # Run linters
make format # Format code
# Testing
make test # Run all tests
# Quick status
git s
# Add and commit
git a && git cm "message"
# Pretty log
git lg
# Check all aliases
git aliases
The workspace uses several environment variables that are automatically set:
VIBE_CODING_ROOT
: Workspace root directoryVIBE_CODING_PROJECTS
: Projects directoryVIBE_CODING_TEMPLATES
: Templates directoryPATH
: Enhanced with Python and Node.js tools
- Python packages: Add to
tools/requirements.txt
- Node.js packages: Modify
tools/node-env/package.json
- Git aliases: Edit
.gitconfig
- Editor settings: Modify
configs/.editorconfig
You can customize project templates in the templates/
directory:
- Edit existing templates to match your preferences
- Add new templates for different frameworks
- Modify the
new-project.sh
script to support new types
Q: Python packages not found after installation
# Ensure PATH is set correctly
source ./init.sh
# Check if packages are installed
pip list | grep numpy
Q: Node.js tools not working
# Install Node.js packages
make install-node
# Verify installation
npm list --depth=0
Q: Git aliases not working
# Check if gitconfig is loaded
git config --list | grep alias
# Source the config manually
git config --local include.path ../.gitconfig
Q: Permission denied on scripts
# Make scripts executable
chmod +x scripts/*.sh init.sh
- Check dependencies:
./scripts/check-deps.sh
- Show status:
make status
- View logs: Check the output of failed commands
- Reset environment:
source ./init.sh
- Use
make clean
regularly to remove temporary files - Create backups with
make backup
before major changes - Use the sandbox directory for experiments
- Keep projects organized in the projects directory
-
New project types:
- Add templates in
templates/
- Modify
scripts/new-project.sh
- Update documentation
- Add templates in
-
New tools:
- Add to appropriate requirements file
- Update
scripts/check-deps.sh
- Document in this README
-
New scripts:
- Add to
scripts/
directory - Make executable:
chmod +x
- Add to
Makefile
if needed
- Add to
- Keep scripts simple and well-documented
- Use consistent error handling and colored output
- Test changes with
scripts/check-deps.sh
- Update documentation for any changes
- Follow existing code style and patterns
Happy Coding! π
For questions or issues, check the troubleshooting section or review the scripts in the scripts/
directory for implementation details.