Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚡ devup

Instant dev environment setup. One command, fully running project.

New dev joins the team? devup scans the project, detects the stack, installs deps, spins up Docker services, sets up the database, and fills in env vars. Done in under a minute.

Why?

Every project has the same onboarding pain:

  • Clone repo
  • Spend 2 hours figuring out which Node version, which env vars, which Docker services
  • Break something, ask a teammate, wait
  • Finally get it running

devup eliminates this entirely.

Install

npm install -g devup

Usage

# Setup current directory
devup

# Setup a specific project
devup ./my-project

# See what would happen without doing anything
devup --dry-run

# Scan and show detected stack
devup scan

# Check system prerequisites
devup doctor

# Skip specific phases
devup --skip-docker --skip-db

What it detects

Language/Tool Detection Actions
Node.js package.json, lockfiles Detects npm/yarn/pnpm/bun, framework (Next, Nuxt, Angular, React, Express, Nest, etc)
Python requirements.txt, pyproject.toml, Pipfile Detects pip/poetry/pipenv/uv, creates venv, framework (Django, FastAPI, Flask)
Go go.mod Downloads modules
Rust Cargo.toml Fetches crates
Docker docker-compose.yml, Dockerfile Starts services, waits for health checks
Database Prisma, Drizzle, Knex, TypeORM, Alembic, Django Runs migrations, seeds
Env vars .env.example/.env.sample Copies template, auto-generates secrets, fills common defaults

Commands

devup [path]

Run the full setup pipeline.

Options:

  • --force - Overwrite existing .env
  • --skip-deps - Skip dependency installation
  • --skip-docker - Skip Docker services
  • --skip-db - Skip database setup
  • --dry-run - Show plan without executing
  • --verbose - Show command output
  • --profile <name> - Use a saved env profile

devup scan [path]

Scan and display detected stack without running anything.

devup doctor [path]

Check if all required tools are installed on your system.

devup profile <action> [name]

Manage environment profiles:

  • devup profile save production - Save current .env as a profile
  • devup profile load staging - Load a profile to .env
  • devup profile list - Show all saved profiles
  • devup profile delete old-profile - Delete a profile

How it works

1. DETECT    Scans project files to identify languages, frameworks, services
2. CHECK     Verifies system prerequisites (node, docker, etc.)
3. ENV       Copies .env template, generates secrets, fills defaults
4. DOCKER    Starts compose services, waits for health checks
5. DEPS      Installs dependencies with detected package manager
6. DATABASE  Runs migrations and seeds

Configuration

devup works zero-config out of the box. But you can add a .devuprc.json for custom behavior:

{
  "preSetup": ["./scripts/download-assets.sh"],
  "postSetup": ["npm run generate", "npm run dev"],
  "env": {
    "DATABASE_URL": "postgresql://localhost:5432/myapp_dev"
  },
  "skipPhases": ["docker"],
  "healthCheck": {
    "url": "http://localhost:3000/health",
    "timeout": 30
  }
}

Roadmap

  • .devuprc.json custom config support
  • Pre/post setup hooks
  • Team sharing: devup publish to share profiles
  • VS Code extension
  • GitHub Action for CI environment setup
  • Monorepo support (Turborepo, Nx)
  • Auto-detect required Node/Python version and install via nvm/pyenv
  • Port conflict detection and resolution
  • Service dependency graph (start DB before API)

Contributing

git clone https://github.com/scrapinfo/devup.git
cd devup
npm install
npm link 

License

MIT

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages