Vibe Coding Frameworks: Do You Still Need Them? CTO View

Webdelo CTO Andrey Popov explains why mature frameworks still matter when AI agents write the code, where a minimal program is enough, and what two exchange integrations taught his team about owning custom code.
— Estimated reading time: 12 minutes
vibe-coding-frameworks-cover

For long-lived systems, frameworks still earn their place

My answer to the debate about vibe coding frameworks is yes for complex, long-lived systems. AI can reduce the work of writing code. Testing, fixing bugs, updating dependencies, and supporting the result still need time and care.

I'm Andrey Popov, CTO and co-founder of Webdelo. This is my view from our team's work on complex software. It is an engineering judgment, not a rule proven for every project.

Vibe coding means describing a task in plain words and letting an AI agent write the code. A framework is a ready foundation for an application, with shared rules. A mature foundation such as Laravel, Spring Boot, or Django needs a different assessment from a small package that connects to one external service.

AI removes some typing, but ownership remains

The argument for dropping frameworks is simple: if an agent can generate the code, why accept someone else's rules? That argument focuses on the first version. Our concern is what happens when the software changes or breaks.

Frameworks save repetitive work, and AI reduces that benefit. But someone must still check the result and explain it to the next engineer. In our Web Development work, those handovers and later changes matter when choosing the foundation.

The word "framework" also groups together tools with different jobs:

  • Server frameworks, such as Laravel, Spring Boot, and Django, organize application logic and data access.
  • Interface tools, such as Vue.js and Next.js, help build the parts users interact with.
  • Go Fx connects application components and manages their startup and shutdown.
  • Libraries provide a narrower function that an application calls when needed.
  • SDKs provide ready tools for an external API, the interface through which systems exchange requests and responses.
  • Agent frameworks coordinate AI models, tools, and steps in a workflow.

A reason to avoid one small SDK is not a reason to abandon an entire application framework.

Mature frameworks give AI agents a known structure

Mature AI-assisted development frameworks give the team and the agent ready components, documentation, and diagnostic tools. That leaves more attention for business rules. In our experience, this structure becomes especially useful when the application needs years of support.

How mature frameworks support AI agents with components, documentation, and diagnostic tools
A mature foundation helps an agent focus on the application's business logic.

Ready components and shared rules

Server frameworks and their ecosystems cover common needs:

  • Sending an incoming request to the right code.
  • Reading and writing database records.
  • Checking submitted data.
  • Managing users and access rights.
  • Running background jobs through queues.

A crm system manages customer relationships. Its customer assignment rules may be unique to the business. The basic machinery for receiving requests and checking input usually does not need a fresh design.

Shared conventions also show an agent where a change belongs. An engineer familiar with Django or Laravel starts with a useful map of the project. A homemade foundation requires that map to be learned first.

Documentation helps people and agents

Official documentation and worked examples give an agent useful references. Community discussions can also explain known failure cases. With a custom foundation, the team must create and maintain more of that knowledge itself.

Widely used frameworks receive public scrutiny and fixes. Popularity does not guarantee security, though. Correct configuration and timely updates remain the team's responsibility.

Using existing components might also reduce an agent's generated code and token use. I treat that as a possibility for individual tasks, not a measured cost saving.

Diagnostics matter when something breaks

A failed background job is easier to investigate when the tools already exist. Mature ecosystems offer practical ways to inspect application behavior:

Uber Fx serves a different purpose. It manages component dependencies and lifecycle in Go. It provides structure, rather than replacing those monitoring tools.

These tools matter most to us during production incidents. That is a poor time to start building a way to see what the application is doing.

Vibe coding without frameworks fits small, bounded tasks

Vibe coding without frameworks makes sense when the task needs little infrastructure. A one-off script or small utility may be easier to understand and maintain as a minimal program. A large framework can add more work than it removes.

For example, a script that converts a local CSV file into another format may need only a standard library. Adding an application framework introduces setup and updates without helping the task.

I would compare the work across the solution's whole life:

  • Learning and integrating the chosen tools.
  • Testing normal behavior and failures.
  • Applying updates and security fixes.
  • Handing the code to another engineer.

Anthropic's guidance on building effective agents also favors simple, composable solutions. It mainly concerns agent orchestration, not web frameworks such as Laravel or Django. The useful lesson is to avoid layers that add no value.

If a prototype becomes a permanent service, review its architecture again. A program used once has different support needs from a service customers rely on every day.

A small SDK needs its own maintenance check

An SDK can save integration work, but its value depends on its coverage and maintenance. A package maintained by one or two people may fall behind the external API. Your team can then inherit work it expected the package to handle.

Before choosing an SDK, I would look for these warning signs:

  • Long gaps between updates while the API keeps changing.
  • Missing methods that the product needs.
  • Weak tests, especially for errors.
  • Hidden request or response details needed for debugging.
  • A design that forces awkward changes elsewhere in the application.

For SDK vs custom API integration, AI changes the initial effort of building a narrow client. A weak package no longer wins simply because it already exists. A well-maintained SDK can still be the better choice.

Binance and Bitget showed us two different ownership costs

We support a high-load platform for algorithmic trading and market analysis. A third-party Binance SDK helped us start, then became code we had to maintain ourselves. For Bitget, we used AI agents to build a narrow client of our own.

These are our team's experiences with specific integrations. They are not an external audit of either exchange or a verdict on their SDK ecosystems.

Binance: from ready package to our own fork

The Binance package already covered the functions we needed first. That saved initial implementation work.

Later, it lagged behind the API and lacked methods we needed. Its structure also limited how we wanted to organize the integration. We created a fork, our own copy of the package, so we could change it.

We then owned the work of extending and maintaining someone else's code. The original shortcut had become technical debt: a choice that made later changes more expensive. That lesson concerns this package in this project.

Bitget: a narrow client built with agents

For Bitget, we chose our own client. The agents worked from the API documentation and checked how the service behaved:

  • They ran real requests and requests in the test environment.
  • They checked test operations.
  • They tested WebSocket connections, which keep a connection open for ongoing updates.
  • They recorded differences between documented and observed behavior in a README and a report.

By my estimate, we had a working base in about one working day. The API had detailed documentation and a test environment. We also kept the required set of functions small.

That timing belongs to this project. The first day's result still needed further testing and work to handle failures reliably.

Webdelo's Binance SDK and custom Bitget client compared by initial effort and support responsibility
Our two integrations show why initial convenience and long-term ownership need separate checks.

What remains our responsibility

Owning the client gives us control over its design. It also leaves us responsible for every failure path:

  • Error handling: deciding what happens when a request fails or receives an unexpected response.
  • Retries and idempotency: making sure a repeated request does not perform the same operation twice.
  • Request limits: staying within the exchange's allowed request rate.
  • Connection recovery: reconnecting after a dropped connection and checking for missed updates.
  • Key protection: keeping credentials out of source code and logs.
  • Testing and support: checking changes as the API and our application evolve.

AI coding research gives context, not a framework verdict

The studies below do not directly settle the framework question. They show that AI's effect depends on the task and tools, and that generated code needs checking. My architectural judgment is separate from those findings.

Speed depends on the setting

In METR's 2025 experiment, 16 experienced developers completed 246 tasks in mature open-source projects. With early-2025 AI tools, they took 19% longer. That result describes this setting, not all developers.

METR's 2026 update discusses selection bias: who joins an experiment and which tasks they bring can distort the result. The researchers say newer tools are probably more useful. They also explain why measuring the current effect reliably is difficult.

A Google experiment with 96 engineers estimated about a 21% reduction in task time in a particular company setting. That estimate had substantial uncertainty. There is no single AI productivity number that tells us which architecture to choose.

Trust and security require checks

In the Stack Overflow Developer Survey 2025, about 66% of respondents to the AI frustration question selected answers that were "almost right, but not quite." On accuracy, 46% distrusted AI output and 33% trusted it. These are responses to separate questions, not measurements of code quality.

Comparisons with the 2026 survey require matching question wording and respondent groups. Trust when an answer is easy to verify is different from general trust in accuracy.

Security vendor Veracode reported insecure results in about 45% of its selected generation tasks. The tasks tested security-sensitive coding scenarios. The figure does not describe 45% of all AI-generated software.

My practical inference is to limit unnecessary custom security-sensitive code. Reusing maintained components reduces the new implementation we must inspect. Application-level security testing remains necessary.

Keep structure and question extra layers

OpenAI's Harness engineering case describes agent-led development supported by architectural boundaries and documentation. It also emphasizes automated checks, metrics, and tools for observing system behavior. It is one company's experience, not a comparison of web frameworks.

I see a shared principle in that case and Anthropic's guidance: give agents clear rules and avoid needless layers. Mature frameworks can provide those rules. The team still has to decide which parts the project actually needs.

Framework vs custom code: weigh complexity and support

I start with two questions: how complex is the system, and how much must it fit special requirements? Then I assess the cost of supporting it. AI changes implementation effort, but it does not make that decision for us.

Architecture choice matrix based on system complexity and need for customization
Use complexity and customization as a starting point, then check maintenance responsibilities.
Situation Likely starting point Main check
Complex, long-lived system with standard application needs Mature framework Does its structure fit the product and support team?
Complex system with special business rules or integrations Hybrid: mature foundation with custom components Can custom parts stay clearly separated?
Simple, one-off task Minimal program or small library Will it remain a bounded task?
Narrow integration with good documentation, a test environment, and a weak SDK Small custom client Who owns failure handling, security, and API updates?

For complex B2B systems, the hybrid is often our preferred approach. We retain a mature application foundation and build selected integrations ourselves. A good library or SDK can fill those gaps when it fits.

This matrix is a guide, not a rule. Check the actual package and API. Use established implementations for cryptography and critical infrastructure rather than asking an agent to invent replacements.

In our web design & development services, this choice is part of planning long-term support. A useful final question is: who will understand and maintain this code in two years?

Choose the foundation you can keep supporting

For complex software, I still favor mature frameworks with small custom components where they earn their place. For a bounded script, I favor a minimal solution. The deciding factor is the work of owning the result after the first version runs.

Discuss the architecture and long-term support of your business-critical software with Webdelo.

Frequently Asked Questions

Do you still need frameworks for vibe coding?

For complex, long-lived systems, yes. AI reduces the work of writing code, but testing, bug fixing, dependency updates and support still take time. A mature framework such as Laravel, Spring Boot or Django gives the team and the AI agent ready components, documentation and diagnostic tools. This is the view of Webdelo CTO Andrey Popov, not a rule proven for every project.

What is vibe coding, and what is a framework?

Vibe coding means describing a task in plain words and letting an AI agent write the code. A framework is a ready foundation for an application, with shared rules on how to organize it. Server frameworks such as Laravel, Spring Boot and Django handle common needs: routing requests, working with a database, checking input, managing users and running background jobs.

When does vibe coding without frameworks make sense?

It fits small, bounded tasks that need little infrastructure. A one-off script, such as converting a local CSV file into another format, may need only a standard library. A large framework would add setup and updates without helping the task. If the prototype later becomes a permanent service, review its architecture again.

How do you choose between a third-party SDK and a custom API client?

Check how well the SDK is maintained and whether it covers what you need. Warning signs are long gaps between updates, missing methods, weak tests, hidden request details and a design that forces awkward changes in your application. If the SDK is weak but the API has good documentation and a test environment, a small custom client built with AI agents can be the better choice. A well-maintained SDK can still win.

What did Webdelo learn from its Binance and Bitget integrations?

A third-party Binance package saved work at the start, then fell behind the API and lacked methods the team needed. Webdelo had to fork it and maintain someone else's code. For Bitget, AI agents built a narrow custom client from the documentation, real and test requests and WebSocket checks. By the CTO's estimate, a working base took about one working day, but that timing belongs to this project and the result still needed more testing.

What stays your responsibility when you build your own API client with AI?

You own every failure path. That includes error handling, safe retries so a repeated request does not run the same operation twice, staying within request limits, and reconnecting after a dropped connection. You also need to keep keys out of source code and logs, and test the client as the API and your application change.

Why don't AI coding studies settle the framework question?

They measure AI in specific settings, not framework choices. In METR's 2025 experiment, 16 experienced developers took 19% longer with early-2025 AI tools, and METR's 2026 update says newer tools are probably more useful but hard to measure reliably. A Google experiment with 96 engineers estimated about a 21% reduction in task time, with substantial uncertainty. Veracode found insecure results in about 45% of its selected security-sensitive tasks, so generated code still needs checking.

cookies We use Cookies

We use cookies to improve website performance, personalize content, and analyze traffic. You can choose which categories of cookies to allow. For more information, please see our Cookie Policy. You can change your preferences at any time.

Essential (Required)

Ensure the website functions properly (navigation, access to secure areas). Always enabled and can only be changed in your browser settings.

Analytics

Help us understand how you use the website so we can improve our services. Do not collect personal data. We use several analytics tools for this purpose.

Advertising

Used to deliver personalized ads and measure the effectiveness of advertising campaigns.

On this site we also use the OpenAI measurement pixel for ChatGPT Ads. It stores a first-party identifier named __oppref in your browser. When you send us an enquiry, a hashed form of your email address and phone number may be transmitted to OpenAI in the USA so that the enquiry can be attributed to the ad you clicked; we never transmit them in readable form.