feat: update README.md and CONTRIBUTING.md

This commit is contained in:
Waleed Latif
2025-03-06 02:06:35 -08:00
parent 721fedfc75
commit d631075418
2 changed files with 39 additions and 78 deletions

View File

@@ -17,7 +17,7 @@ Thank you for your interest in contributing to Sim Studio! Our goal is to provid
- [License](#license) - [License](#license)
- [Adding New Blocks and Tools](#adding-new-blocks-and-tools) - [Adding New Blocks and Tools](#adding-new-blocks-and-tools)
- [Local Storage Mode](#local-storage-mode) - [Local Storage Mode](#local-storage-mode)
- [CLI](#cli) - [Standalone Build](#standalone-build)
--- ---
@@ -398,7 +398,7 @@ Happy coding!
Sim Studio supports a local storage mode that uses the browser's localStorage instead of a database. This is particularly useful for: Sim Studio supports a local storage mode that uses the browser's localStorage instead of a database. This is particularly useful for:
- Quick demos and testing - Quick demos and testing
- Using the `npx simstudio` CLI - Using the `npx simstudio` command
- Development without setting up a database - Development without setting up a database
- Creating shareable examples - Creating shareable examples
@@ -413,22 +413,11 @@ All data will be stored in the browser's localStorage. This means:
- Different browsers (Chrome vs. Firefox) will have separate data stores - Different browsers (Chrome vs. Firefox) will have separate data stores
- Database migrations and schema changes won't affect local storage - Database migrations and schema changes won't affect local storage
### Developing the CLI ### Standalone Build
Sim Studio includes a CLI package that allows users to quickly start the application with `npx simstudio`. To develop the CLI:
1. Build the CLI: `npm run cli:build`
2. Test the CLI: `npm run cli:start`
3. Make changes in the `packages/@simstudio/cli` directory
4. Publish new versions: `npm run cli:publish` (requires npm permissions)
The CLI automatically enables local storage mode when running.
### Building the Standalone Version
The `npx simstudio` command downloads and runs a pre-built standalone version of Sim Studio. To build this standalone version: The `npx simstudio` command downloads and runs a pre-built standalone version of Sim Studio. To build this standalone version:
1. Run `npm run build:standalone` from the project root 1. Run `node scripts/build-standalone.js` from the project root
2. This creates a tarball (`sim-standalone.tar.gz`) containing: 2. This creates a tarball (`sim-standalone.tar.gz`) containing:
- A pre-built static export of the Next.js application - A pre-built static export of the Next.js application
@@ -437,9 +426,9 @@ The `npx simstudio` command downloads and runs a pre-built standalone version of
3. To release a new version: 3. To release a new version:
- Upload the tarball to a GitHub release - Upload the tarball to a GitHub release
- Update the `DOWNLOAD_URL` in `packages/@simstudio/cli/src/commands/start.ts` - Update the `DOWNLOAD_URL` in `packages/simstudio/src/commands/start.ts`
- Update the `STANDALONE_VERSION` constant if needed - Update the `STANDALONE_VERSION` constant if needed
- Publish the CLI package: `npm run cli:publish` - Publish the package: `npm run publish-cli`
--- ---

View File

@@ -2,7 +2,7 @@
[![Twitter](https://img.shields.io/twitter/follow/simstudio?style=social)](https://x.com/simstudioai) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Twitter](https://img.shields.io/twitter/follow/simstudio?style=social)](https://x.com/simstudioai) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
**Sim Studio** is a powerful, user-friendly platform that allows developers and agents to build, test, and optimize agentic workflows. **Sim Studio** is a powerful, user-friendly platform for building, testing, and optimizing agentic workflows.
## Run ## Run
@@ -11,19 +11,18 @@
## Quick Start ## Quick Start
### Try Instantly with npx ### Try Instantly With Zero Installation
Sim Studio now supports a quick start option with zero installation required:
```bash ```bash
npx simstudio npx simstudio
``` ```
This downloads and runs Sim Studio with browser localStorage for data persistence. Visit http://localhost:3000 to start building workflows immediately! This instantly runs Sim Studio on your local machine with data stored in your browser's localStorage.
Visit http://localhost:3000 to start building your workflows right away!
### Docker Setup (For Development) ### Development Setup
For a full development environment with database support: #### Option 1: Docker Environment (Recommended)
```bash ```bash
# Clone the repository # Clone the repository
@@ -31,89 +30,62 @@ git clone https://github.com/YOUR_USERNAME/sim.git
cd sim cd sim
# Start the Docker environment # Start the Docker environment
docker compose up -d
# Or use the helper script
./scripts/start_simstudio_docker.sh ./scripts/start_simstudio_docker.sh
``` ```
### VS Code Dev Container #### Option 2: [Cursor](https://cursor.sh) / [VS Code](https://code.visualstudio.com) Dev Containers
For the best development experience: For the best development experience:
1. Install the VS Code Remote - Containers extension 1. Install [Cursor](https://cursor.sh) or [VS Code](https://code.visualstudio.com)
2. Open the project in VS Code 2. Install the [Remote - Containers extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers)
3. Click "Reopen in Container" when prompted 3. Open the project in Cursor or VS Code
4. Run `sim-start` in the terminal 4. Click "Reopen in Container" when prompted
5. Run `npm run dev` in the terminal
## Development Options #### Option 3: Manual Setup
### Option 1: Docker (Recommended) If you prefer not to use Docker or Dev Containers:
The quickest way to get started with development: 1. **Install Dependencies**
```bash ```bash
docker compose up -d # Clone the repository
``` git clone https://github.com/YOUR_USERNAME/sim.git
cd sim
Or use the convenience script for automatic setup: # Install dependencies
```bash
chmod +x scripts/start_simstudio_docker.sh
./scripts/start_simstudio_docker.sh
```
### Option 2: VS Code / Cursor Dev Containers
For a great development experience with VS Code or Cursor:
1. **Install Prerequisites**
- Visual Studio Code
- Docker Desktop
- Remote - Containers extension for VS Code
2. **Open in Container**
- Open the project in VS Code
- When prompted, click "Reopen in Container" (or use F1 → "Remote-Containers: Reopen in Container")
- Wait for the container to build and initialize
3. **Start Developing**
- The container automatically sets up your environment
- Type `sim-start` in the terminal to run the development server
This method works with GitHub Codespaces too - just click "Code" → "Codespaces" → "Create codespace on main".
### Option 3: Manual Setup
If you prefer not to use Docker:
1. **Install dependencies**
```bash
npm install npm install
``` ```
2. **Set up environment variables** 2. **Set Up Environment**
Copy `.env.example` to `.env` and configure: ```bash
# Copy .env.example to .env
cp .env.example .env
- Database connection (PostgreSQL) # Configure your .env file with:
- Authentication secret # - Database connection (PostgreSQL)
- Email provider (Resend) # - Authentication settings
```
3. **Set up the database** 3. **Set Up Database**
```bash ```bash
# Push the database schema # Push the database schema
npx drizzle-kit push npx drizzle-kit push
``` ```
4. **Start the development server** 4. **Start Development Server**
```bash ```bash
# Start the development server
npm run dev npm run dev
``` ```
5. **Open [http://localhost:3000](http://localhost:3000)** 5. **Open [http://localhost:3000](http://localhost:3000) in your browser**
## Tech Stack ## Tech Stack