mirror of
https://github.com/stackblitz/bolt.new
synced 2025-02-05 12:35:53 +00:00
91 lines
3.9 KiB
Markdown
91 lines
3.9 KiB
Markdown
# Bolt
|
||
Welcome to the **Bolt** open-source repository! This repo provides everything you need to start building **AI-powered software development tools** powered by StackBlitz’s **WebContainer API**.
|
||
|
||
### Why Build with Bolt + WebContainer API
|
||
By building with the Bolt + WebContainer API you can create browser-based applications that let users **prompt, run, edit, and deploy** full-stack web apps directly in the browser, without the need for virtual machines. With WebContainer API, you can build apps that give AI direct access and full control over a **Node.js server**, **filesystem**, **package manager** and **dev terminal** inside your users browser tab. This powerful combination allows you to create a new class of development tools that support all major javascript libraries and node packages right out of the box, all without remote environments or local installs.
|
||
|
||
|
||
### What’s the Difference Between Bolt (This Repo) and [Bolt.new](https://bolt.new)?
|
||
|
||
- **Bolt.new**: This is the **commercial product** from StackBlitz—a hosted, browser-based AI development tool that enables users to prompt, run, edit, and deploy full-stack web applications directly in the browser. Built on top of the [Bolt open-source repo](https://github.com/stackblitz/bolt) and powered by the StackBlitz **WebContainer API**, it offers non-technical users the ability to create production-grade apps using AI.
|
||
|
||
- **Bolt (This Repo)**: This open-source repository provides the building blocks behind **Bolt.new**. This package contains the UI interface for Bolt as well as the server components, built using [Remix Run](https://remix.run/). By leveraging this repo and StackBlitz’s **WebContainer API**, you can create your own AI-powered development tools and full-stack applications that run entirely in the browser. This code allows you to customize and expand use cases, integrating AI and WebContainers into your own unique applications.
|
||
|
||
The [WebContainer API](https://webcontainers.io) is free for personal and open source usage. If you're building an application for commercial usage, you can learn more about our [WebContainer API commercial usage pricing here](https://stackblitz.com/pricing#webcontainer-api).
|
||
|
||
# Get Started Building with Bolt
|
||
|
||
## Prerequisites
|
||
|
||
Before you begin, ensure you have the following installed:
|
||
|
||
- Node.js (v20.15.1)
|
||
- pnpm (v9.4.0)
|
||
|
||
## Setup
|
||
|
||
1. Clone the repository (if you haven't already):
|
||
|
||
```bash
|
||
git clone https://github.com/stackblitz/bolt.new.git
|
||
```
|
||
|
||
2. Install dependencies:
|
||
|
||
```bash
|
||
pnpm install
|
||
```
|
||
|
||
3. Create a `.env.local` file in the root directory and add your Anthropic API key:
|
||
|
||
```
|
||
ANTHROPIC_API_KEY=XXX
|
||
```
|
||
|
||
Optionally, you an set the debug level:
|
||
|
||
```
|
||
VITE_LOG_LEVEL=debug
|
||
```
|
||
|
||
**Important**: Never commit your `.env.local` file to version control. It's already included in .gitignore.
|
||
|
||
## Available Scripts
|
||
|
||
- `pnpm run dev`: Starts the development server.
|
||
- `pnpm run build`: Builds the project.
|
||
- `pnpm run start`: Runs the built application locally using Wrangler Pages. This script uses `bindings.sh` to set up necessary bindings so you don't have to duplicate environment variables.
|
||
- `pnpm run preview`: Builds the project and then starts it locally, useful for testing the production build. Note, HTTP streaming currently doesn't work as expected with `wrangler pages dev`.
|
||
- `pnpm test:` Runs the test suite using Vitest.
|
||
- `pnpm run typecheck`: Runs TypeScript type checking.
|
||
- `pnpm run typegen`: Generates TypeScript types using Wrangler.
|
||
- `pnpm run deploy`: Builds the project and deploys it to Cloudflare Pages.
|
||
|
||
## Development
|
||
|
||
To start the development server:
|
||
|
||
```bash
|
||
pnpm run dev
|
||
```
|
||
|
||
This will start the Remix Vite development server.
|
||
|
||
## Testing
|
||
|
||
Run the test suite with:
|
||
|
||
```bash
|
||
pnpm test
|
||
```
|
||
|
||
## Deployment
|
||
|
||
To deploy the application to Cloudflare Pages:
|
||
|
||
```bash
|
||
pnpm run deploy
|
||
```
|
||
|
||
Make sure you have the necessary permissions and Wrangler is correctly configured for your Cloudflare account.
|