diff --git a/docs/app/docs/[[...slug]]/page.tsx b/docs/app/docs/[[...slug]]/page.tsx index 99818c0e3..31eb27a4a 100644 --- a/docs/app/docs/[[...slug]]/page.tsx +++ b/docs/app/docs/[[...slug]]/page.tsx @@ -1,7 +1,7 @@ import { notFound } from 'next/navigation' -import defaultMdxComponents from 'fumadocs-ui/mdx' import { DocsBody, DocsDescription, DocsPage, DocsTitle } from 'fumadocs-ui/page' import { source } from '@/lib/source' +import mdxComponents from '@/components/mdx-components' export const dynamic = 'force-static' @@ -33,7 +33,7 @@ export default async function Page(props: { params: Promise<{ slug?: string[] }> {page.data.title} {page.data.description} - + ) diff --git a/docs/app/layout.tsx b/docs/app/layout.tsx index eee6ea8c1..7ce491891 100644 --- a/docs/app/layout.tsx +++ b/docs/app/layout.tsx @@ -16,3 +16,22 @@ export default function Layout({ children }: { children: ReactNode }) { ) } + +export const metadata = { + title: 'Sim Studio', + description: 'Drag and drop agents to create workflows. Powered by Simplicity', + manifest: '/favicon/site.webmanifest', + icons: { + icon: [ + { url: '/favicon/favicon-16x16.png', sizes: '16x16', type: 'image/png' }, + { url: '/favicon/favicon-32x32.png', sizes: '32x32', type: 'image/png' }, + ], + apple: '/favicon/apple-touch-icon.png', + shortcut: '/favicon/favicon.ico', + }, + appleWebApp: { + capable: true, + statusBarStyle: 'default', + title: 'Sim Studio Docs', + }, +} diff --git a/docs/components/mdx-components.tsx b/docs/components/mdx-components.tsx new file mode 100644 index 000000000..a19f5c268 --- /dev/null +++ b/docs/components/mdx-components.tsx @@ -0,0 +1,10 @@ +import defaultMdxComponents from 'fumadocs-ui/mdx' +import { ThemeImage } from './ui/theme-image' + +// Extend the default MDX components with our custom components +const mdxComponents = { + ...defaultMdxComponents, + ThemeImage +} + +export default mdxComponents \ No newline at end of file diff --git a/docs/components/ui/theme-image.tsx b/docs/components/ui/theme-image.tsx new file mode 100644 index 000000000..27d4fbcc4 --- /dev/null +++ b/docs/components/ui/theme-image.tsx @@ -0,0 +1,54 @@ +'use client' + +import { useTheme } from 'next-themes' +import Image from 'next/image' +import { useEffect, useState } from 'react' + +interface ThemeImageProps { + lightSrc: string + darkSrc: string + alt: string + width?: number + height?: number + className?: string +} + +export function ThemeImage({ + lightSrc, + darkSrc, + alt, + width = 600, + height = 400, + className = 'rounded-lg border border-border my-6' +}: ThemeImageProps) { + const { resolvedTheme } = useTheme() + const [imageSrc, setImageSrc] = useState(lightSrc) + const [mounted, setMounted] = useState(false) + + // Wait until component is mounted to avoid hydration mismatch + useEffect(() => { + setMounted(true) + }, []) + + useEffect(() => { + if (mounted) { + setImageSrc(resolvedTheme === 'dark' ? darkSrc : lightSrc) + } + }, [resolvedTheme, lightSrc, darkSrc, mounted]) + + if (!mounted) { + return null + } + + return ( +
+ {alt} +
+ ) +} \ No newline at end of file diff --git a/docs/content/docs/blocks/agent.mdx b/docs/content/docs/blocks/agent.mdx index b47fbc6e5..cb2a11670 100644 --- a/docs/content/docs/blocks/agent.mdx +++ b/docs/content/docs/blocks/agent.mdx @@ -6,9 +6,18 @@ description: Create powerful AI agents using any LLM provider import { Callout } from 'fumadocs-ui/components/callout' import { Tabs, Tab } from 'fumadocs-ui/components/tabs' import { Steps, Step } from 'fumadocs-ui/components/steps' +import { ThemeImage } from '@/components/ui/theme-image' The Agent block is a fundamental component in Sim Studio that allows you to create powerful AI agents using various LLM providers. These agents can process inputs based on customizable system prompts and utilize integrated tools to enhance their capabilities. + + Agent blocks serve as interfaces to Large Language Models, enabling your workflow to leverage state-of-the-art AI capabilities. @@ -56,10 +65,11 @@ The user prompt or context is the specific input or question that the agent shou Choose from a variety of LLM providers: -- OpenAI (GPT-3.5, GPT-4) -- Anthropic (Claude) -- Google (Gemini) -- Mistral AI +- OpenAI (GPT-4o, o1, o3-mini) +- Anthropic (Claude 3.7 Sonnet) +- Google (Gemini 2.5 Pro, Gemini 2.0 Flash) +- Groq, Cerebras +- Ollama Local Models - And more ### Temperature @@ -86,13 +96,34 @@ Your API key for the selected LLM provider. This is securely stored and used for ### Tools -Integrate specialized tools to enhance the agent's capabilities. Tools can be: +Integrate specialized tools to enhance the agent's capabilities. You can add tools to your agent by: -- Search engines for retrieving information -- Document processors for working with files -- Database connectors for data retrieval -- API clients for external service integration -- And many more +1. Clicking the Tools section in the Agent configuration +2. Selecting from the tools dropdown menu +3. Choosing an existing tool or creating a new one + + + +Available tools include: + +- **Confluence**: Access and query Confluence knowledge bases +- **Evaluator**: Use evaluation metrics to assess content +- **GitHub**: Interact with GitHub repositories and issues +- **Gmail**: Process and respond to emails +- **Firecrawl**: Web search and content retrieval +- And many, many more pre-built integrations + +You can also create custom tools to meet specific requirements for your agent's capabilities. + + + Tools significantly expand what your agent can do, allowing it to access external systems, retrieve information, and take actions beyond simple text generation. + ### Response Format @@ -114,6 +145,8 @@ Define a structured format for the agent's response when needed, using JSON or o
  • Model: The model used for generation
  • Tokens: Usage statistics (prompt, completion, total)
  • Tool Calls: Details of any tools used during processing
  • +
  • Cost: Cost of the response
  • +
  • Usage: Usage statistics (prompt, completion, total)
  • @@ -140,19 +173,7 @@ tools: ## Best Practices -### Be specific in system prompts - -Clearly define the agent's role, tone, and limitations. The more specific your instructions are, the better the agent will be able to fulfill its intended purpose. - -### Choose the right temperature setting - -- Use lower temperature settings (0-0.3) when accuracy is important -- Increase temperature (0.7-2.0) for more creative or varied responses - -### Combine with Evaluator blocks - -Use Evaluator blocks to assess agent responses and ensure quality. This allows you to create feedback loops and implement quality control measures. - -### Leverage tools effectively - -Integrate tools that complement the agent's purpose and enhance its capabilities. Be selective about which tools you provide to avoid overwhelming the agent. \ No newline at end of file +- **Be specific in system prompts**: Clearly define the agent's role, tone, and limitations. The more specific your instructions are, the better the agent will be able to fulfill its intended purpose. +- **Choose the right temperature setting**: Use lower temperature settings (0-0.3) when accuracy is important, or increase temperature (0.7-2.0) for more creative or varied responses +- **Combine with Evaluator blocks**: Use Evaluator blocks to assess agent responses and ensure quality. This allows you to create feedback loops and implement quality control measures. +- **Leverage tools effectively**: Integrate tools that complement the agent's purpose and enhance its capabilities. Be selective about which tools you provide to avoid overwhelming the agent. \ No newline at end of file diff --git a/docs/content/docs/blocks/api.mdx b/docs/content/docs/blocks/api.mdx index 41ea0feb2..d7b780ee0 100644 --- a/docs/content/docs/blocks/api.mdx +++ b/docs/content/docs/blocks/api.mdx @@ -1,9 +1,22 @@ --- title: API -description: Connect to external services through HTTP requests +description: Connect to external services through API endpoints --- -The API block allows you to connect to any external API or web service through HTTP requests. It supports all standard HTTP methods and provides full customization of request parameters, making it a versatile tool for integrating external services into your workflows. +import { Callout } from 'fumadocs-ui/components/callout' +import { Tabs, Tab } from 'fumadocs-ui/components/tabs' +import { Steps, Step } from 'fumadocs-ui/components/steps' +import { ThemeImage } from '@/components/ui/theme-image' + +The API block enables you to connect your workflow to external services through HTTP requests. It supports various methods like GET, POST, PUT, DELETE, and PATCH, allowing you to interact with virtually any API endpoint. + + ## Overview diff --git a/docs/content/docs/blocks/condition.mdx b/docs/content/docs/blocks/condition.mdx index 247ccf50a..9e4cdeefb 100644 --- a/docs/content/docs/blocks/condition.mdx +++ b/docs/content/docs/blocks/condition.mdx @@ -1,15 +1,24 @@ --- title: Condition -description: Branch workflow execution based on boolean expressions +description: Create conditional logic and branching in your workflows --- import { Callout } from 'fumadocs-ui/components/callout' import { Tabs, Tab } from 'fumadocs-ui/components/tabs' import { Steps, Step } from 'fumadocs-ui/components/steps' import { Files, Folder, File } from 'fumadocs-ui/components/files' +import { ThemeImage } from '@/components/ui/theme-image' The Condition block allows you to branch your workflow execution path based on boolean expressions. It evaluates conditions and routes the workflow accordingly, enabling you to create dynamic, responsive workflows with different execution paths. + + Condition blocks enable deterministic decision-making without requiring an LLM, making them ideal for straightforward branching logic. @@ -146,16 +155,6 @@ conditions: path: "improvement_feedback_block" ``` -## Key Points from the Documentation - -According to the [Fumadocs Files component documentation](https://fumadocs.vercel.app/docs/ui/components/files): - -1. The `File` component requires a `name` prop (string) -2. The `File` component can optionally have an `icon` prop (ReactNode) -3. The components must be used in the correct hierarchy: `` wrapping `` and/or `` components - -Make sure you're following this structure in your MDX files to avoid errors with the Files component. - ## Best Practices ### Order conditions correctly diff --git a/docs/content/docs/blocks/evaluator.mdx b/docs/content/docs/blocks/evaluator.mdx index 7c5489493..9454c404f 100644 --- a/docs/content/docs/blocks/evaluator.mdx +++ b/docs/content/docs/blocks/evaluator.mdx @@ -3,7 +3,16 @@ title: Evaluator description: Assess content quality using customizable evaluation metrics --- -The Evaluator block allows you to assess content quality using customizable evaluation metrics and scoring criteria. It enables you to create objective evaluation frameworks with numeric scoring to measure performance across multiple dimensions. +import { Callout } from 'fumadocs-ui/components/callout' +import { Tabs, Tab } from 'fumadocs-ui/components/tabs' +import { Steps, Step } from 'fumadocs-ui/components/steps' +import { ThemeImage } from '@/components/ui/theme-image' + +The Evaluator block allows you to assess the quality of content using customizable evaluation metrics. This is particularly useful for evaluating AI-generated text, ensuring outputs meet specific criteria, and building quality-control mechanisms into your workflows. + + + The Evaluator block images will be added soon. Currently, the block uses standard evaluation metrics to assess content quality. + ## Overview @@ -44,10 +53,11 @@ The content to be evaluated. This can be: Choose an LLM provider to perform the evaluation: -- OpenAI (GPT-3.5, GPT-4) -- Anthropic (Claude) -- Google (Gemini) -- Mistral AI +- OpenAI (GPT-4o, o1, o3-mini) +- Anthropic (Claude 3.7 Sonnet) +- Google (Gemini 2.5 Pro, Gemini 2.0 Flash) +- Groq, Cerebras +- Ollama Local Models - And more The chosen model should have strong reasoning capabilities to provide accurate evaluations. diff --git a/docs/content/docs/blocks/function.mdx b/docs/content/docs/blocks/function.mdx index 0ba01a946..9340f9cde 100644 --- a/docs/content/docs/blocks/function.mdx +++ b/docs/content/docs/blocks/function.mdx @@ -1,9 +1,22 @@ --- title: Function -description: Execute custom JavaScript or TypeScript code within your workflow +description: Execute custom JavaScript or TypeScript code in your workflows --- -The Function block allows you to execute custom JavaScript or TypeScript code within your workflow. This enables you to implement complex logic, transform data, or create custom functionality that extends beyond the capabilities of other blocks. +import { Callout } from 'fumadocs-ui/components/callout' +import { Tabs, Tab } from 'fumadocs-ui/components/tabs' +import { Steps, Step } from 'fumadocs-ui/components/steps' +import { ThemeImage } from '@/components/ui/theme-image' + +The Function block allows you to write and execute custom JavaScript or TypeScript code directly within your workflow. This powerful feature enables you to implement complex logic, data transformations, and integration with external libraries. + + ## Overview diff --git a/docs/content/docs/blocks/router.mdx b/docs/content/docs/blocks/router.mdx index 8a4377efd..249f8a469 100644 --- a/docs/content/docs/blocks/router.mdx +++ b/docs/content/docs/blocks/router.mdx @@ -1,12 +1,24 @@ --- -title: Router Block +title: Router description: Route workflow execution based on specific conditions or logic --- -# Router Block +import { Callout } from 'fumadocs-ui/components/callout' +import { Tabs, Tab } from 'fumadocs-ui/components/tabs' +import { Steps, Step } from 'fumadocs-ui/components/steps' +import { ThemeImage } from '@/components/ui/theme-image' The Router block is a powerful component in Sim Studio that intelligently routes workflow execution based on content analysis, user input, or predefined conditions. It acts as a decision-making junction in your workflow, directing the flow to different paths based on various criteria. + + + ## Overview The Router block uses LLMs to analyze input content and determine the most appropriate next step in your workflow. This allows for: @@ -47,10 +59,11 @@ The possible destination blocks that the Router can select from. The Router will Choose an LLM provider to power the routing decision: -- OpenAI (GPT-3.5, GPT-4) -- Anthropic (Claude) -- Google (Gemini) -- Mistral AI +- OpenAI (GPT-4o, o1, o3-mini) +- Anthropic (Claude 3.7 Sonnet) +- Google (Gemini 2.5 Pro, Gemini 2.0 Flash) +- Groq, Cerebras +- Ollama Local Models - And more Select a model with strong reasoning capabilities for more accurate routing decisions. diff --git a/docs/content/docs/connections/accessing-data.mdx b/docs/content/docs/connections/accessing-data.mdx index 16c7cb6a5..fda7fec93 100644 --- a/docs/content/docs/connections/accessing-data.mdx +++ b/docs/content/docs/connections/accessing-data.mdx @@ -6,8 +6,6 @@ description: Techniques for accessing and manipulating data from connected block import { Callout } from 'fumadocs-ui/components/callout' import { Files, Folder, File } from 'fumadocs-ui/components/files' -## Accessing Connected Data - Once blocks are connected, you can access data from source blocks in destination blocks using connection tags and various data access techniques. ## Basic Data Access diff --git a/docs/content/docs/connections/best-practices.mdx b/docs/content/docs/connections/best-practices.mdx index c3caec1a1..9d77cdd65 100644 --- a/docs/content/docs/connections/best-practices.mdx +++ b/docs/content/docs/connections/best-practices.mdx @@ -6,10 +6,6 @@ description: Recommended patterns for effective connection management import { Callout } from 'fumadocs-ui/components/callout' import { Steps, Step } from 'fumadocs-ui/components/steps' -## Connection Best Practices - -Following these best practices will help you create more maintainable, efficient, and reliable workflows with connections. - ## Workflow Organization ### Organize Your Connections diff --git a/docs/content/docs/connections/data-structure.mdx b/docs/content/docs/connections/data-structure.mdx index b409ce9dd..ac0658fda 100644 --- a/docs/content/docs/connections/data-structure.mdx +++ b/docs/content/docs/connections/data-structure.mdx @@ -6,8 +6,6 @@ description: Understanding the data structure of different block outputs import { Tabs, Tab } from 'fumadocs-ui/components/tabs' import { Callout } from 'fumadocs-ui/components/callout' -## Connection Data Structure - When you connect blocks, the output data structure from the source block determines what values are available in the destination block. Each block type produces a specific output structure that you can reference in downstream blocks. @@ -29,7 +27,9 @@ Different block types produce different output structures. Here's what you can e "completion": 85, "total": 205 }, - "toolCalls": [...] + "toolCalls": [...], + "cost": [...], + "usage": [...] } ``` @@ -42,6 +42,8 @@ Different block types produce different output structures. Here's what you can e - **completion**: Number of tokens in the completion - **total**: Total tokens used - **toolCalls**: Array of tool calls made by the agent (if any) + - **cost**: Array of cost objects for each tool call (if any) + - **usage**: Token usage statistics for the entire response ```json diff --git a/docs/content/docs/connections/tags.mdx b/docs/content/docs/connections/tags.mdx index 2ab7daf09..e53b7aa7c 100644 --- a/docs/content/docs/connections/tags.mdx +++ b/docs/content/docs/connections/tags.mdx @@ -5,8 +5,6 @@ description: Using connection tags to reference data between blocks import { Callout } from 'fumadocs-ui/components/callout' -## Connection Tags - Connection tags are visual representations of the data available from connected blocks. They provide an easy way to reference outputs from previous blocks in your workflow.
    diff --git a/docs/content/docs/execution/advanced.mdx b/docs/content/docs/execution/advanced.mdx index 4095124d8..15f21bc4e 100644 --- a/docs/content/docs/execution/advanced.mdx +++ b/docs/content/docs/execution/advanced.mdx @@ -7,8 +7,6 @@ import { Callout } from 'fumadocs-ui/components/callout' import { Tabs, Tab } from 'fumadocs-ui/components/tabs' import { Accordion, Accordions } from 'fumadocs-ui/components/accordion' -# Advanced Execution Features - Sim Studio provides several advanced features that give you more control over workflow execution, error handling, and performance optimization. ## Error Handling diff --git a/docs/content/docs/execution/basics.mdx b/docs/content/docs/execution/basics.mdx index edc8e17eb..3a6a3f3b3 100644 --- a/docs/content/docs/execution/basics.mdx +++ b/docs/content/docs/execution/basics.mdx @@ -9,8 +9,6 @@ import { Files, Folder, File } from 'fumadocs-ui/components/files' import { Callout } from 'fumadocs-ui/components/callout' import { AgentIcon, ApiIcon, ConditionalIcon, CodeIcon, ChartBarIcon, ConnectIcon } from '@/components/icons' -# Execution Basics - When you run a workflow in Sim Studio, the execution engine follows a systematic process to ensure blocks are executed in the correct order and data flows properly between them. ## Execution Flow diff --git a/docs/content/docs/execution/index.mdx b/docs/content/docs/execution/index.mdx index 8b3700506..67bf561df 100644 --- a/docs/content/docs/execution/index.mdx +++ b/docs/content/docs/execution/index.mdx @@ -11,8 +11,6 @@ import { Tab, Tabs } from 'fumadocs-ui/components/tabs' import { AgentIcon, ApiIcon, ConditionalIcon, CodeIcon, ChartBarIcon, ConnectIcon, GmailIcon, PerplexityIcon, NotionIcon, ExaAIIcon, FirecrawlIcon, SlackIcon } from '@/components/icons' import { Callout } from 'fumadocs-ui/components/callout' -# Workflow Execution - Sim Studio provides a powerful execution engine that brings your workflows to life. Understanding how execution works will help you design more effective workflows and troubleshoot any issues that arise.
    diff --git a/docs/content/docs/execution/loops.mdx b/docs/content/docs/execution/loops.mdx index 638dfc332..cd895aea7 100644 --- a/docs/content/docs/execution/loops.mdx +++ b/docs/content/docs/execution/loops.mdx @@ -7,8 +7,6 @@ import { Callout } from 'fumadocs-ui/components/callout' import { Steps, Step } from 'fumadocs-ui/components/steps' import { Tabs, Tab } from 'fumadocs-ui/components/tabs' -# Loops - Loops are a powerful feature in Sim Studio that allow you to create iterative processes, implement feedback mechanisms, and build more sophisticated workflows.
    diff --git a/docs/content/docs/meta.json b/docs/content/docs/meta.json index ee4331486..1f7aa64ef 100644 --- a/docs/content/docs/meta.json +++ b/docs/content/docs/meta.json @@ -1,4 +1,4 @@ { "title": "Sim Studio Documentation", - "pages": ["introduction", "getting-started", "blocks", "tools", "connections", "execution"] + "pages": ["introduction", "getting-started", "blocks", "variables", "tools", "connections", "execution"] } diff --git a/docs/content/docs/variables/index.mdx b/docs/content/docs/variables/index.mdx new file mode 100644 index 000000000..d2f55ff1f --- /dev/null +++ b/docs/content/docs/variables/index.mdx @@ -0,0 +1,137 @@ +--- +title: Variables +description: Store and share data across your workflow with global variables +--- + +import { Callout } from 'fumadocs-ui/components/callout' +import { Tabs, Tab } from 'fumadocs-ui/components/tabs' +import { Steps, Step } from 'fumadocs-ui/components/steps' +import { ThemeImage } from '@/components/ui/theme-image' + +Variables in Sim Studio act as a global store for data that can be accessed and modified by any block in your workflow. They provide a powerful way to share information between different parts of your workflow, maintain state, and create more dynamic applications. + + + + + Variables allow you to store and share data across your entire workflow, making it easy to maintain state and create complex, interconnected systems. + + +## Overview + +The Variables feature serves as a central data store for your workflow, enabling you to: + + + + Store global data: Create variables that persist throughout workflow execution + + + Share information between blocks: Access the same data from any block in your workflow + + + Maintain workflow state: Keep track of important values as your workflow runs + + + Create dynamic workflows: Build more flexible systems that can adapt based on stored values + + + +## Creating Variables + +You can create and manage variables from the Variables panel in the sidebar. Each variable has: + +- **Name**: A unique identifier used to reference the variable +- **Value**: The data stored in the variable (supports various data types) +- **Description** (optional): A note explaining the variable's purpose + +## Accessing Variables + +Variables can be accessed from any block in your workflow using the variable dropdown. Simply: + +1. Type `<` in any text field within a block +2. Browse the dropdown menu to select from available variables +3. Select the variable you want to use + + + + + You can also drag the connection tag into a field to open the variable dropdown and access available variables. + + +## Variable Types + +Variables in Sim Studio can store various types of data: + + + + ``` + "Hello, World!" + ``` +

    Text variables store strings of characters. They're useful for storing messages, names, and other text data.

    +
    + + ``` + 42 + ``` +

    Number variables store numeric values that can be used in calculations or comparisons.

    +
    + + ``` + true + ``` +

    Boolean variables store true/false values, perfect for flags and condition checks.

    +
    + + ```json + { + "name": "John", + "age": 30, + "city": "New York" + } + ``` +

    Object variables store structured data with properties and values.

    +
    + + ```json + [1, 2, 3, "four", "five"] + ``` +

    Array variables store ordered collections of items.

    +
    +
    + +## Using Variables in Blocks + +When you access a variable from a block, you can: + +- **Read its value**: Use the variable's current value in your block's logic +- **Modify it**: Update the variable's value based on your block's processing +- **Use it in expressions**: Include variables in expressions and calculations + +## Variable Scope + +Variables in Sim Studio have global scope, meaning: + +- They are accessible from any block in your workflow +- Any block can modify them +- Changes to variables persist throughout workflow execution +- Variables maintain their values between runs, unless explicitly reset + +## Best Practices + +- **Use Descriptive Names**: Choose variable names that clearly indicate what the variable represents. For example, use `userPreferences` instead of `up`. +- **Document Your Variables**: Add descriptions to your variables to help other team members understand their purpose and usage. +- **Consider Variable Scope**: Remember that variables are global and can be modified by any block. Design your workflow with this in mind to prevent unexpected behavior. +- **Initialize Variables Early**: Set up and initialize your variables at the beginning of your workflow to ensure they're available when needed. +- **Handle Missing Variables**: Always consider the case where a variable might not yet exist or might have an unexpected value. Add appropriate validation in your blocks. +- **Limit Variable Count**: Keep the number of variables manageable. Too many variables can make your workflow difficult to understand and maintain. \ No newline at end of file diff --git a/docs/content/docs/variables/meta.json b/docs/content/docs/variables/meta.json new file mode 100644 index 000000000..50a6a53f9 --- /dev/null +++ b/docs/content/docs/variables/meta.json @@ -0,0 +1,4 @@ +{ + "title": "Variables", + "pages": ["index"] +} \ No newline at end of file diff --git a/docs/public/favicon/android-chrome-192x192.png b/docs/public/favicon/android-chrome-192x192.png new file mode 100644 index 000000000..fb64742df Binary files /dev/null and b/docs/public/favicon/android-chrome-192x192.png differ diff --git a/docs/public/favicon/android-chrome-512x512.png b/docs/public/favicon/android-chrome-512x512.png new file mode 100644 index 000000000..74138d043 Binary files /dev/null and b/docs/public/favicon/android-chrome-512x512.png differ diff --git a/docs/public/favicon/apple-touch-icon.png b/docs/public/favicon/apple-touch-icon.png new file mode 100644 index 000000000..df95b36c7 Binary files /dev/null and b/docs/public/favicon/apple-touch-icon.png differ diff --git a/docs/public/favicon/favicon-16x16.png b/docs/public/favicon/favicon-16x16.png new file mode 100644 index 000000000..c6351b188 Binary files /dev/null and b/docs/public/favicon/favicon-16x16.png differ diff --git a/docs/public/favicon/favicon-32x32.png b/docs/public/favicon/favicon-32x32.png new file mode 100644 index 000000000..7b280256d Binary files /dev/null and b/docs/public/favicon/favicon-32x32.png differ diff --git a/docs/public/favicon/favicon.ico b/docs/public/favicon/favicon.ico new file mode 100644 index 000000000..976844415 Binary files /dev/null and b/docs/public/favicon/favicon.ico differ diff --git a/docs/public/favicon/site.webmanifest b/docs/public/favicon/site.webmanifest new file mode 100644 index 000000000..23d3b7fd4 --- /dev/null +++ b/docs/public/favicon/site.webmanifest @@ -0,0 +1,19 @@ +{ + "name": "Sim Studio", + "short_name": "Sim Studio", + "icons": [ + { + "src": "/favicon/android-chrome-192x192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "/favicon/android-chrome-512x512.png", + "sizes": "512x512", + "type": "image/png" + } + ], + "theme_color": "#ffffff", + "background_color": "#ffffff", + "display": "standalone" +} diff --git a/docs/public/static/dark/agent-dark.png b/docs/public/static/dark/agent-dark.png new file mode 100644 index 000000000..8b610d99e Binary files /dev/null and b/docs/public/static/dark/agent-dark.png differ diff --git a/docs/public/static/dark/api-dark.png b/docs/public/static/dark/api-dark.png new file mode 100644 index 000000000..83c45bc3a Binary files /dev/null and b/docs/public/static/dark/api-dark.png differ diff --git a/docs/public/static/dark/condition-dark.png b/docs/public/static/dark/condition-dark.png new file mode 100644 index 000000000..ce2f40291 Binary files /dev/null and b/docs/public/static/dark/condition-dark.png differ diff --git a/docs/public/static/dark/function-dark.png b/docs/public/static/dark/function-dark.png new file mode 100644 index 000000000..b694d25f1 Binary files /dev/null and b/docs/public/static/dark/function-dark.png differ diff --git a/docs/public/static/dark/router-dark.png b/docs/public/static/dark/router-dark.png new file mode 100644 index 000000000..455b34dd2 Binary files /dev/null and b/docs/public/static/dark/router-dark.png differ diff --git a/docs/public/static/dark/tooldropdown-dark.png b/docs/public/static/dark/tooldropdown-dark.png new file mode 100644 index 000000000..d2627306a Binary files /dev/null and b/docs/public/static/dark/tooldropdown-dark.png differ diff --git a/docs/public/static/dark/variabledropdown-dark.png b/docs/public/static/dark/variabledropdown-dark.png new file mode 100644 index 000000000..7ec3f9cbd Binary files /dev/null and b/docs/public/static/dark/variabledropdown-dark.png differ diff --git a/docs/public/static/dark/variables-dark.png b/docs/public/static/dark/variables-dark.png new file mode 100644 index 000000000..fc0f5a686 Binary files /dev/null and b/docs/public/static/dark/variables-dark.png differ diff --git a/docs/public/static/light/agent-light.png b/docs/public/static/light/agent-light.png new file mode 100644 index 000000000..9c26c1454 Binary files /dev/null and b/docs/public/static/light/agent-light.png differ diff --git a/docs/public/static/light/api-light.png b/docs/public/static/light/api-light.png new file mode 100644 index 000000000..ac87a4fa0 Binary files /dev/null and b/docs/public/static/light/api-light.png differ diff --git a/docs/public/static/light/condition-light.png b/docs/public/static/light/condition-light.png new file mode 100644 index 000000000..78e625c8a Binary files /dev/null and b/docs/public/static/light/condition-light.png differ diff --git a/docs/public/static/light/function-light.png b/docs/public/static/light/function-light.png new file mode 100644 index 000000000..691882e1c Binary files /dev/null and b/docs/public/static/light/function-light.png differ diff --git a/docs/public/static/light/router-light.png b/docs/public/static/light/router-light.png new file mode 100644 index 000000000..98ed6d091 Binary files /dev/null and b/docs/public/static/light/router-light.png differ diff --git a/docs/public/static/light/tooldropdown-light.png b/docs/public/static/light/tooldropdown-light.png new file mode 100644 index 000000000..b55a1ba50 Binary files /dev/null and b/docs/public/static/light/tooldropdown-light.png differ diff --git a/docs/public/static/light/variabledropdown-light.png b/docs/public/static/light/variabledropdown-light.png new file mode 100644 index 000000000..e13229a85 Binary files /dev/null and b/docs/public/static/light/variabledropdown-light.png differ diff --git a/docs/public/static/light/variables-light.png b/docs/public/static/light/variables-light.png new file mode 100644 index 000000000..a61182c70 Binary files /dev/null and b/docs/public/static/light/variables-light.png differ