Can Claude Make Websites? From a Brief to a Working Site
Claude can write HTML, CSS, and JavaScript and preview the result in Artifacts. Turning that into a live site requires a separate hosting step. This guide explains what Claude builds, what it cannot host, and how to keep requirements and design decisions available across iterations.
Updated 5 min read
Claude can write a website: HTML structure, CSS styles, and JavaScript behavior. In Claude.ai, the Artifacts panel renders a live preview of the code as you iterate. What Claude cannot do is host that site on the internet or give it a public address. The code is yours to deploy wherever you choose.
The gap between "Claude wrote the code" and "the site is live" is where most people get stuck. The code needs a deployment step, and the project context needs to survive across multiple iterations — often across different sessions. Tools like fenbs keep the requirements, approved design decisions, and open review tasks in one place so later sessions pick up where the last one stopped.
What Claude can build
Claude is capable with standard web technologies:
- Static sites: landing pages, portfolios, documentation pages, single-page applications.
- Interactive UI: forms, navigation menus, modals, tabs, accordions, and basic animations.
- JavaScript logic: form validation, simple calculators, data display from a provided array.
- CSS frameworks: it can write Tailwind classes, Bootstrap markup, or plain CSS.
- React, Vue, or other frameworks: component-based code that you can drop into an existing project.
Claude cannot connect a site to a live database, set up a backend, or deploy files to a server. Those steps require tooling outside the Claude chat interface. For building directly with a code editor and deploying, Claude Code is the more appropriate tool.
How to use Claude Artifacts for website work
Claude.ai's Artifacts panel shows a live render of HTML, CSS, and JavaScript code next to the conversation. This makes it easy to iterate:
- Describe the page in plain language: the sections it needs, the goal, the audience, any specific elements.
- Claude writes the code and shows a preview. Review the visual result and the code separately.
- Give specific feedback: "The header is too wide," "the button color should be #2563EB," "add a mobile breakpoint at 768px."
- Ask Claude to extract the final code as a single file, or copy it directly from the Artifacts panel.
- Deploy the file to a static hosting service. Common options include GitHub Pages, Netlify, and Vercel.
Keeping requirements across iterations
A website project typically runs over several sessions. In session one you get the structure right; in session two you add the contact form; in session three you fix the mobile layout. Each new session starts without memory of the previous ones unless you carry that context forward.
When a designer or developer joins partway through, they need to understand the decisions already made — which color palette was approved, why the navigation was simplified, what the client rejected in session one. Those decisions exist only in a chat thread that may be weeks old and spread across multiple conversations, making them easy to miss or accidentally reverse.
The most reliable approach is to write the requirements and agreed decisions in a place that survives session changes. Paste the current brief at the start of each new session, or connect an assistant to a project tool where those decisions are already stored.
Keep requirements and design decisions across iterations
Add the website requirements, approved design decisions, and open review tasks to a fenbs project. Connect Claude to fenbs over MCP and ask it to read the project context at the start of each session. Every iteration starts from the current brief, not from a blank conversation.
Create a free accountFree for one person · No credit card · Works with Claude, ChatGPT, Cursor and more
Deploying the code Claude writes
For a static site — one without a server-side backend — deployment is straightforward. Copy the HTML, CSS, and JavaScript files Claude produced. Create a repository on GitHub, push the files, and enable GitHub Pages in the repository settings. Netlify and Vercel offer similar one-step deploys by connecting a repository or uploading files directly.
For sites that need a backend — user accounts, a database, dynamic content — you need server infrastructure that Claude cannot set up for you. Claude can write the backend code in Node.js, Python, or another language, but running and hosting that code is a separate step involving a cloud platform or server.
How to do this with fenbs
- Create a free account. Create a project for the website build.
- Add the site requirements as the project description: the pages needed, the audience, the key interactions, and any design constraints.
- Record design decisions as they are approved — color palette, font choices, layout decisions — in Decisions and rules. That prevents earlier choices from being reversed by accident in a later session.
- Connect Claude to fenbs from Integrations and ask it to read the project context at the start of each iteration.
- Add a task for each open review item — mobile layout check, contact form test, accessibility review — so each session has a concrete next step.
When Claude is not the right fit for website building
Claude in a chat interface is well suited for static pages, prototypes, and component-level work. For a production site with real users, a database, authentication, or complex integrations, you will need a developer, a proper development environment, and testing infrastructure. fenbs does not host websites or connect to deployment pipelines.
Even for a simple static site, test the deployed version across browsers and on a real device before sharing the link. Claude produces code that works in its Artifacts preview, but browser differences, font loading, and mobile breakpoints can behave differently once the site is live. A quick check on a phone takes less time than rebuilding after a client has seen a broken layout.