diff --git a/docs/app/docs/layout.tsx b/docs/app/(docs)/[[...slug]]/layout.tsx similarity index 94% rename from docs/app/docs/layout.tsx rename to docs/app/(docs)/[[...slug]]/layout.tsx index dfeda22a9..cef81579c 100644 --- a/docs/app/docs/layout.tsx +++ b/docs/app/(docs)/[[...slug]]/layout.tsx @@ -26,7 +26,7 @@ export default function Layout({ children }: { children: ReactNode }) { nav={{ title: (
- + Sim Studio
), diff --git a/docs/app/docs/[[...slug]]/page.tsx b/docs/app/(docs)/[[...slug]]/page.tsx similarity index 100% rename from docs/app/docs/[[...slug]]/page.tsx rename to docs/app/(docs)/[[...slug]]/page.tsx diff --git a/docs/app/global.css b/docs/app/global.css index 7408c0a4e..b01108b97 100644 --- a/docs/app/global.css +++ b/docs/app/global.css @@ -1,5 +1,7 @@ @import 'tailwindcss'; @import 'fumadocs-ui/css/neutral.css'; @import 'fumadocs-ui/css/preset.css'; - +:root { + --color-fd-primary: #8b5cf6; /* or your desired purple hue */ +} @source '../node_modules/fumadocs-ui/dist/**/*.js'; diff --git a/docs/app/layout.config.tsx b/docs/app/layout.config.tsx index 9e4cb77b5..ba9d2d7dd 100644 --- a/docs/app/layout.config.tsx +++ b/docs/app/layout.config.tsx @@ -18,11 +18,4 @@ export const baseOptions: BaseLayoutProps = { ), }, - links: [ - { - text: 'Documentation', - url: '/docs', - active: 'nested-url', - }, - ], } \ No newline at end of file diff --git a/docs/components/icons.tsx b/docs/components/icons.tsx index c1f67d79d..016f6d584 100644 --- a/docs/components/icons.tsx +++ b/docs/components/icons.tsx @@ -200,7 +200,7 @@ export function ExaAIIcon(props: SVGProps) { xmlns="http://www.w3.org/2000/svg" > diff --git a/docs/components/ui/block-types.tsx b/docs/components/ui/block-types.tsx index 39cb9773b..e1484da44 100644 --- a/docs/components/ui/block-types.tsx +++ b/docs/components/ui/block-types.tsx @@ -19,6 +19,15 @@ const BlockFeature = ({ totalItems: number itemsPerRow: number }) => { + const blockColor = { + '--block-color': title === 'Agent' ? '#8b5cf6' : + title === 'API' ? '#3b82f6' : + title === 'Condition' ? '#f59e0b' : + title === 'Function' ? '#10b981' : + title === 'Router' ? '#6366f1' : + title === 'Evaluator' ? '#ef4444' : '#8b5cf6' + } as React.CSSProperties + const content = ( <> {index < itemsPerRow && ( @@ -27,9 +36,13 @@ const BlockFeature = ({ {index >= itemsPerRow && (
)} -
{icon}
+
+ {icon} +
-
+
{title} @@ -65,42 +78,42 @@ export function BlockTypes() { description: 'Create powerful AI agents using any LLM provider with customizable system prompts and tool integrations.', icon: , - href: '/docs/blocks/agent', + href: '/blocks/agent', }, { title: 'API', description: 'Connect to any external API with support for all standard HTTP methods and customizable request parameters.', icon: , - href: '/docs/blocks/api', + href: '/blocks/api', }, { title: 'Condition', description: 'Add a condition to the workflow to branch the execution path based on a boolean expression.', icon: , - href: '/docs/blocks/condition', + href: '/blocks/condition', }, { title: 'Function', description: 'Execute custom JavaScript or TypeScript code within your workflow to transform data or implement complex logic.', icon: , - href: '/docs/blocks/function', + href: '/blocks/function', }, { title: 'Router', description: 'Intelligently direct workflow execution to different paths based on input analysis.', icon: , - href: '/docs/blocks/router', + href: '/blocks/router', }, { title: 'Evaluator', description: 'Assess content using customizable evaluation metrics and scoring criteria across multiple dimensions.', icon: , - href: '/docs/blocks/evaluator', + href: '/blocks/evaluator', }, ] diff --git a/docs/content/docs/blocks/condition.mdx b/docs/content/docs/blocks/condition.mdx index 9e4cdeefb..39c2755cf 100644 --- a/docs/content/docs/blocks/condition.mdx +++ b/docs/content/docs/blocks/condition.mdx @@ -30,30 +30,30 @@ The Condition block serves as a decision point in your workflow, enabling:

Branching Logic

-

+

Create different execution paths based on specific conditions -

+

Rule-Based Routing

-

+

Route workflows deterministically without needing an LLM -

+

Data-Driven Decisions

-

+

Create workflow paths based on structured data values -

+

If-Then-Else Logic

-

+

Implement conditional programming paradigms in your workflows -

+
diff --git a/docs/content/docs/blocks/evaluator.mdx b/docs/content/docs/blocks/evaluator.mdx index 9454c404f..d81925e77 100644 --- a/docs/content/docs/blocks/evaluator.mdx +++ b/docs/content/docs/blocks/evaluator.mdx @@ -10,9 +10,13 @@ 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 diff --git a/docs/content/docs/connections/tags.mdx b/docs/content/docs/connections/tags.mdx index e53b7aa7c..d66799c68 100644 --- a/docs/content/docs/connections/tags.mdx +++ b/docs/content/docs/connections/tags.mdx @@ -38,9 +38,9 @@ There are two primary ways to use connection tags in your workflows:

Drag and Drop

-

+

Click on a connection tag and drag it into input fields of destination blocks. A dropdown will appear showing available values. -

+
  1. Hover over a connection tag to see available data
  2. Click and drag the tag to an input field
  3. @@ -51,9 +51,9 @@ There are two primary ways to use connection tags in your workflows:

    Angle Bracket Syntax

    -

    +

    Type <> in input fields to see a dropdown of available connection values from previous blocks. -

    +
    1. Click in any input field where you want to use connected data
    2. Type <> to trigger the connection dropdown
    3. diff --git a/docs/content/docs/execution/loops.mdx b/docs/content/docs/execution/loops.mdx index cd895aea7..8c1483267 100644 --- a/docs/content/docs/execution/loops.mdx +++ b/docs/content/docs/execution/loops.mdx @@ -148,9 +148,9 @@ Loops enable powerful workflow patterns:

      Example: Content Refinement

      -

      +

      Create a loop where an Agent block generates content, an Evaluator block assesses it, and a Function block decides whether to continue refining. -

      +
      1. Agent generates initial content
      2. Evaluator scores the content
      3. @@ -164,9 +164,9 @@ Loops enable powerful workflow patterns:

        Example: Data Processing Pipeline

        -

        +

        Process a collection of items one at a time through a series of blocks. -

        +
        1. Function block extracts the next item from a collection
        2. Processing blocks operate on the single item
        3. @@ -179,9 +179,9 @@ Loops enable powerful workflow patterns:

          Example: Multi-step Reasoning

          -

          +

          Implement a recursive approach to complex problem solving. -

          +
          1. Agent analyzes the current problem state
          2. Function block implements a step in the solution
          3. diff --git a/docs/content/docs/meta.json b/docs/content/docs/meta.json index 1f7aa64ef..e72f6975b 100644 --- a/docs/content/docs/meta.json +++ b/docs/content/docs/meta.json @@ -1,4 +1,5 @@ { "title": "Sim Studio Documentation", - "pages": ["introduction", "getting-started", "blocks", "variables", "tools", "connections", "execution"] + "pages": ["introduction", "getting-started", "blocks", "variables", "tools", "connections", "execution"], + "defaultOpen": true } diff --git a/docs/lib/source.ts b/docs/lib/source.ts index e4fa07d8a..213fd75ee 100644 --- a/docs/lib/source.ts +++ b/docs/lib/source.ts @@ -4,6 +4,6 @@ import { docs } from '@/.source' // `loader()` also assign a URL to your pages // See https://fumadocs.vercel.app/docs/headless/source-api for more info export const source = loader({ - baseUrl: '/docs', + baseUrl: '/', source: docs.toFumadocsSource(), }) diff --git a/docs/next.config.ts b/docs/next.config.ts index 1f307593a..249bb4cf3 100644 --- a/docs/next.config.ts +++ b/docs/next.config.ts @@ -9,12 +9,7 @@ const config = { return [ { source: "/", - destination: "/docs/introduction", - permanent: true, - }, - { - source: "/docs", - destination: "/docs/introduction", + destination: "/introduction", permanent: true, }, ]; diff --git a/docs/public/static/dark/evaluator-dark.png b/docs/public/static/dark/evaluator-dark.png new file mode 100644 index 000000000..170dca33a Binary files /dev/null and b/docs/public/static/dark/evaluator-dark.png differ diff --git a/docs/public/static/light/evaluator-light.png b/docs/public/static/light/evaluator-light.png new file mode 100644 index 000000000..2629467bf Binary files /dev/null and b/docs/public/static/light/evaluator-light.png differ diff --git a/sim/app/(landing)/components/nav-client.tsx b/sim/app/(landing)/components/nav-client.tsx index c9dbb2ca3..84dbb782c 100644 --- a/sim/app/(landing)/components/nav-client.tsx +++ b/sim/app/(landing)/components/nav-client.tsx @@ -91,7 +91,7 @@ export default function NavClient({ children }: { children: React.ReactNode }) { ) )}