Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>Easy Dev StudioNew to Visual Studio Code? Get it now.
Easy Dev Studio

Easy Dev Studio

Anas Nashaat Ahmed

|
1 install
| (0) | Free
Standalone, framework-aware developer toolkit for VS Code.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Easy Dev Studio

Easy Dev Studio is a standalone, context-aware VS Code developer toolkit. It detects supported projects, analyzes selected files, recommends related files, and generates source code without running framework CLIs or installing dependencies.

Supported frameworks

  • Laravel: controllers, services, repositories, DTOs, requests, resources, tests, and migration-driven API/Web CRUD
  • Node.js: modules, classes, functions, errors, and companion tests
  • Express: routes, controllers, services, middleware, validators, error handlers, and tests
  • NestJS: feature modules, controllers, providers, DTOs, guards, pipes, interceptors, filters, and tests
  • Django: models, forms, views, URLs, admin classes, commands, tests, ready-to-use Web CRUD, and DRF CRUD

JavaScript projects support ESM and CommonJS. TypeScript and Python projects are detected statically. NestJS is detected before Express, and Express before generic Node.js, so overlapping dependencies resolve to the most specific adapter.

Development

npm install
npm run compile
npm test

Press F5 in VS Code to open an Extension Development Host, then right-click a supported source file or folder.

Laravel CRUD from a migration

Right-click a standard database/migrations/*_create_*_table.php migration and choose Easy Dev Studio: Generate Missing Files, then select API Controller or Web Controller. A checkbox list lets you choose the model, Store Request, Update Request, controller, API resource, service, repository, routes, and feature test individually. A selected Service uses Eloquent directly unless Repository is also checked, in which case the Service injects the Repository. API mode creates JSON responses and API routes; Web mode creates Blade-oriented responses and web routes.

Choose Easy Dev Studio: Analyze on a model or migration, then click an existing counterpart to open it or a missing counterpart to create and open it immediately. Models created from migrations include fillable fields, casts, belongsTo relationships, and soft deletes when present.

Validation is isolated in field-aware Form Requests. Declared foreign keys such as user_id receive type and Rule::exists(...) validation, including separate $table->foreign(...) declarations. Unique fields, decimal precision, unsigned values, enums, nullable/defaulted fields, UUIDs, ULIDs, dates, JSON, email, and string lengths are inferred from the migration. Store responses use HTTP 201, and feature tests cover listing, creation, validation, display, update, and deletion. Sensitive fields are excluded from API resources. The index endpoint uses simple pagination without generated filtering or sorting logic. Existing files are skipped rather than overwritten, and a failed bundle removes files created during that attempt. The generated routes/easy-dev/*.php file is automatically registered once in routes/api.php for API mode or routes/web.php for Web mode.

Laravel classes are generated as regular extensible classes, not final.

Easy Dev Studio does not connect to a live database or read credentials. Migration parsing keeps generation deterministic and works without executing PHP or Artisan.

Django full CRUD from a model

Right-click an app models.py, choose Easy Dev Studio: Generate Missing Files, select the CRUD recommendation, then choose Web CRUD or REST API CRUD. Web mode can generate a ModelForm, class-based list/detail/create/update/delete views, named URLs, accessible templates, and tests. REST mode keeps its generated serializer, filters, views, URLs, and focused tests together under your_app/api/.

The REST output uses a ModelSerializer, authenticated ModelViewSet, DefaultRouter, pagination, django-filter, search, safe ordering, explicit field whitelists, model-derived price/stock validation, and relationship-aware queryset optimization. Existing modules are extended with idempotent marked blocks instead of being replaced. Install both runtime dependencies before using the generated API:

python -m pip install djangorestframework django-filter

Add "rest_framework" and "django_filters" to INSTALLED_APPS. Generation remains available when a package is installed only in the active environment and cannot be detected statically; Easy Dev Studio shows a setup warning instead of blocking generation.

For the fastest path, right-click a Django models.py file containing one model and choose Easy Dev Studio: Create Django Simple CRUD. It generates the complete Web CRUD with form, views, URLs, templates, tests, project URL registration, and safe admin registration using the recommended defaults.

Django Web CRUD remains isolated under your_app/web/model_name/. Django REST CRUD uses an importable your_app/api/ package and appends idempotent generated blocks without replacing existing code. When project settings.py and urls.py can be identified, Easy Dev Studio includes your_app.api.urls once under /api/. Otherwise, it reports the exact module that needs to be included.

Discover and customize

Run Easy Dev Studio: Show Capabilities to see the actions available for the detected framework. The extension also contributes a native VS Code Getting Started walkthrough. Easy Dev Studio: Edit Template exposes generic templates plus Laravel and Django CRUD templates as project-level overrides. Legacy Laravel overrides containing generated filters are blocked with actions to open or reset the template.

Before writing generated code, Easy Dev Studio builds it in an isolated temporary copy of the project. The preview lists every file that would be created or updated, lets you select the files to apply, and can open exact side-by-side diffs. Selected changes are applied through one VS Code workspace edit, and generation stops if a reviewed source file changed in the meantime.

Project configuration

Easy Dev Studio creates .easy-dev only when a destination or template override is saved:

{
  "frameworks": {
    "express": {
      "paths": {
        "controller": "src/controllers",
        "service": "src/services"
      }
    },
    "django": {
      "paths": {
        "test": "tests"
      }
    }
  }
}

Project template overrides are stored under .easy-dev/templates/{framework}/. Existing configuration and templates remain supported.

Easy Dev Studio does not execute PHP, Artisan, Node.js, Nest CLI, Python, or Django management commands during detection or generation.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft