Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions apps/sim/app/(landing)/components/structured-data.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ export default function StructuredData() {
url: 'https://sim.ai',
name: 'Sim - AI Agent Workflow Builder',
description:
'Open-source AI agent workflow builder. 30,000+ developers build and deploy agentic workflows. SOC2 and HIPAA compliant.',
'Open-source AI agent workflow builder. 50,000+ developers build and deploy agentic workflows. SOC2 and HIPAA compliant.',
publisher: {
'@id': 'https://sim.ai/#organization',
},
Expand Down Expand Up @@ -98,7 +98,7 @@ export default function StructuredData() {
'@id': 'https://sim.ai/#software',
name: 'Sim - AI Agent Workflow Builder',
description:
'Open-source AI agent workflow builder used by 30,000+ developers. Build agentic workflows with visual drag-and-drop interface. SOC2 and HIPAA compliant. Integrate with 100+ apps.',
'Open-source AI agent workflow builder used by 50,000+ developers. Build agentic workflows with visual drag-and-drop interface. SOC2 and HIPAA compliant. Integrate with 100+ apps.',
applicationCategory: 'DeveloperApplication',
applicationSubCategory: 'AI Development Tools',
operatingSystem: 'Web, Windows, macOS, Linux',
Expand Down Expand Up @@ -173,7 +173,7 @@ export default function StructuredData() {
'Visual workflow builder',
'Drag-and-drop interface',
'100+ integrations',
'AI model support (OpenAI, Anthropic, Google)',
'AI model support (OpenAI, Anthropic, Google, xAI, Mistral, Perplexity)',
'Real-time collaboration',
'Version control',
'API access',
Expand All @@ -198,15 +198,15 @@ export default function StructuredData() {
name: 'What is Sim?',
acceptedAnswer: {
'@type': 'Answer',
text: 'Sim is an open-source AI agent workflow builder used by 30,000+ developers at trail-blazing startups to Fortune 500 companies. It provides a visual drag-and-drop interface for building and deploying agentic workflows. Sim is SOC2 and HIPAA compliant.',
text: 'Sim is an open-source AI agent workflow builder used by 50,000+ developers at trail-blazing startups to Fortune 500 companies. It provides a visual drag-and-drop interface for building and deploying agentic workflows. Sim is SOC2 and HIPAA compliant.',
},
},
{
'@type': 'Question',
name: 'Which AI models does Sim support?',
acceptedAnswer: {
'@type': 'Answer',
text: 'Sim supports all major AI models including OpenAI (GPT-4, GPT-3.5), Anthropic (Claude), Google (Gemini), Mistral, Perplexity, and many more. You can also connect to open-source models via Ollama.',
text: 'Sim supports all major AI models including OpenAI (GPT-5, GPT-4o), Anthropic (Claude), Google (Gemini), xAI (Grok), Mistral, Perplexity, and many more. You can also connect to open-source models via Ollama.',
},
},
{
Expand Down
1 change: 0 additions & 1 deletion apps/sim/app/manifest.ts
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@ export default function manifest(): MetadataRoute.Manifest {
short_name: 'New',
description: 'Create a new AI workflow',
url: '/workspace',
icons: [{ src: '/icons/new-workflow.png', sizes: '192x192' }],
},
],
lang: 'en-US',
Expand Down
6 changes: 3 additions & 3 deletions apps/sim/app/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import Landing from '@/app/(landing)/landing'
export const metadata: Metadata = {
title: 'Sim - AI Agent Workflow Builder | Open Source Platform',
description:
'Open-source AI agent workflow builder used by 30,000+ developers. Build and deploy agentic workflows with visual drag-and-drop interface. Connect 100+ apps. SOC2 and HIPAA compliant. Used by startups to Fortune 500 companies.',
'Open-source AI agent workflow builder used by 50,000+ developers. Build and deploy agentic workflows with visual drag-and-drop interface. Connect 100+ apps. SOC2 and HIPAA compliant. Used by startups to Fortune 500 companies.',
keywords:
'AI agent workflow builder, agentic workflows, open source AI, visual workflow builder, AI automation, LLM workflows, AI agents, workflow automation, no-code AI, SOC2 compliant, HIPAA compliant, enterprise AI',
authors: [{ name: 'Sim Studio' }],
Expand All @@ -18,7 +18,7 @@ export const metadata: Metadata = {
openGraph: {
title: 'Sim - AI Agent Workflow Builder | Open Source',
description:
'Open-source platform used by 30,000+ developers. Build and deploy agentic workflows with drag-and-drop interface. SOC2 & HIPAA compliant. Connect 100+ apps.',
'Open-source platform used by 50,000+ developers. Build and deploy agentic workflows with drag-and-drop interface. SOC2 & HIPAA compliant. Connect 100+ apps.',
type: 'website',
url: 'https://sim.ai',
siteName: 'Sim',
Expand All @@ -45,7 +45,7 @@ export const metadata: Metadata = {
creator: '@simdotai',
title: 'Sim - AI Agent Workflow Builder | Open Source',
description:
'Open-source platform for agentic workflows. 30,000+ developers. Visual builder. 100+ integrations. SOC2 & HIPAA compliant.',
'Open-source platform for agentic workflows. 50,000+ developers. Visual builder. 100+ integrations. SOC2 & HIPAA compliant.',
images: {
url: '/social/twitter-image.png',
alt: 'Sim - Visual AI Workflow Builder',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -86,8 +86,7 @@ export function ControlBar({ hasValidationErrors = false }: ControlBarProps) {
const workspaceId = params.workspaceId as string

// Store hooks
const { history, revertToHistoryState, lastSaved, setNeedsRedeploymentFlag, blocks } =
useWorkflowStore()
const { lastSaved, setNeedsRedeploymentFlag, blocks } = useWorkflowStore()
const {
workflows,
updateWorkflow,
Expand Down
13 changes: 9 additions & 4 deletions apps/sim/app/workspace/[workspaceId]/w/[workflowId]/workflow.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,8 @@ const WorkflowContent = React.memo(() => {
const [draggedNodeId, setDraggedNodeId] = useState<string | null>(null)
const [potentialParentId, setPotentialParentId] = useState<string | null>(null)
// State for tracking validation errors
const [nestedSubflowErrors, setNestedSubflowErrors] = useState<Set<string>>(new Set())
// Use a function initializer to ensure the Set is only created once
const [nestedSubflowErrors, setNestedSubflowErrors] = useState<Set<string>>(() => new Set())
// Enhanced edge selection with parent context and unique identifier
const [selectedEdgeInfo, setSelectedEdgeInfo] = useState<SelectedEdgeInfo | null>(null)

Expand Down Expand Up @@ -1292,8 +1293,6 @@ const WorkflowContent = React.memo(() => {
// Include dynamic dimensions for container resizing calculations
width: block.isWide ? 450 : 350, // Standard width based on isWide state
height: Math.max(block.height || 100, 100), // Use actual height with minimum
// Explicitly set measured to prevent ReactFlow from recalculating
measured: { width: block.isWide ? 450 : 350, height: Math.max(block.height || 100, 100) },
})
})

Expand Down Expand Up @@ -1967,7 +1966,13 @@ const WorkflowContent = React.memo(() => {
edgeTypes={edgeTypes}
onDrop={effectivePermissions.canEdit ? onDrop : undefined}
onDragOver={effectivePermissions.canEdit ? onDragOver : undefined}
fitView
onInit={(instance) => {
requestAnimationFrame(() => {
requestAnimationFrame(() => {
instance.fitView({ padding: 0.3 })
})
})
}}
minZoom={0.1}
maxZoom={1.3}
panOnScroll
Expand Down
265 changes: 0 additions & 265 deletions apps/sim/stores/workflows/middleware.ts

This file was deleted.

Loading