Skip to content

Commit 3ecf7a1

Browse files
authored
feat(seo): updated out-of-date site metadata, removed unused static assets, updated emails (#2708)
* feat(seo): updated out-of-date site metadata, removed unused static assets, updated emails * more * more * remove unused social photos
1 parent 1420bfb commit 3ecf7a1

File tree

21 files changed

+436
-154
lines changed

21 files changed

+436
-154
lines changed

apps/sim/app/(landing)/components/structured-data.tsx

Lines changed: 9 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -42,17 +42,6 @@ export default function StructuredData() {
4242
publisher: {
4343
'@id': 'https://sim.ai/#organization',
4444
},
45-
potentialAction: [
46-
{
47-
'@type': 'SearchAction',
48-
'@id': 'https://sim.ai/#searchaction',
49-
target: {
50-
'@type': 'EntryPoint',
51-
urlTemplate: 'https://sim.ai/search?q={search_term_string}',
52-
},
53-
'query-input': 'required name=search_term_string',
54-
},
55-
],
5645
inLanguage: 'en-US',
5746
},
5847
{
@@ -110,7 +99,7 @@ export default function StructuredData() {
11099
name: 'Community Plan',
111100
price: '0',
112101
priceCurrency: 'USD',
113-
priceValidUntil: '2025-12-31',
102+
priceValidUntil: '2026-12-31',
114103
itemCondition: 'https://schema.org/NewCondition',
115104
availability: 'https://schema.org/InStock',
116105
seller: {
@@ -134,7 +123,7 @@ export default function StructuredData() {
134123
unitText: 'MONTH',
135124
billingIncrement: 1,
136125
},
137-
priceValidUntil: '2025-12-31',
126+
priceValidUntil: '2026-12-31',
138127
itemCondition: 'https://schema.org/NewCondition',
139128
availability: 'https://schema.org/InStock',
140129
seller: {
@@ -154,7 +143,7 @@ export default function StructuredData() {
154143
unitText: 'MONTH',
155144
billingIncrement: 1,
156145
},
157-
priceValidUntil: '2025-12-31',
146+
priceValidUntil: '2026-12-31',
158147
itemCondition: 'https://schema.org/NewCondition',
159148
availability: 'https://schema.org/InStock',
160149
seller: {
@@ -184,8 +173,8 @@ export default function StructuredData() {
184173
screenshot: [
185174
{
186175
'@type': 'ImageObject',
187-
url: 'https://sim.ai/screenshots/workflow-builder.png',
188-
caption: 'Sim workflow builder interface',
176+
url: 'https://sim.ai/logo/426-240/primary/small.png',
177+
caption: 'Sim AI agent workflow builder interface',
189178
},
190179
],
191180
},
@@ -223,16 +212,9 @@ export default function StructuredData() {
223212
}
224213

225214
return (
226-
<>
227-
<script
228-
type='application/ld+json'
229-
dangerouslySetInnerHTML={{ __html: JSON.stringify(structuredData) }}
230-
/>
231-
{/* LLM-friendly semantic HTML comments */}
232-
{/* About: Sim is a visual workflow builder for AI agents and large language models (LLMs) */}
233-
{/* Purpose: Enable users to create AI-powered automations without coding */}
234-
{/* Features: Drag-and-drop interface, 100+ integrations, multi-model support */}
235-
{/* Use cases: Email automation, chatbots, data analysis, content generation */}
236-
</>
215+
<script
216+
type='application/ld+json'
217+
dangerouslySetInnerHTML={{ __html: JSON.stringify(structuredData) }}
218+
/>
237219
)
238220
}
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
import { getBaseUrl } from '@/lib/core/utils/urls'
2+
3+
export async function GET() {
4+
const baseUrl = getBaseUrl()
5+
6+
const expiresDate = new Date()
7+
expiresDate.setFullYear(expiresDate.getFullYear() + 1)
8+
const expires = expiresDate.toISOString()
9+
10+
const securityTxt = `# Security Policy for Sim
11+
# https://securitytxt.org/
12+
# RFC 9116: https://www.rfc-editor.org/rfc/rfc9116.html
13+
14+
# Required: Contact information for security reports
15+
Contact: mailto:[email protected]
16+
17+
# Required: When this file expires (ISO 8601 format, within 1 year)
18+
Expires: ${expires}
19+
20+
# Preferred languages for security reports
21+
Preferred-Languages: en
22+
23+
# Canonical URL for this security.txt file
24+
Canonical: ${baseUrl}/.well-known/security.txt
25+
26+
# Link to security policy page
27+
Policy: ${baseUrl}/security
28+
29+
# Acknowledgments page for security researchers
30+
# Acknowledgments: ${baseUrl}/security/thanks
31+
32+
# If you discover a security vulnerability, please report it responsibly.
33+
# We appreciate your help in keeping Sim and our users secure.
34+
`
35+
36+
return new Response(securityTxt, {
37+
headers: {
38+
'Content-Type': 'text/plain; charset=utf-8',
39+
'Cache-Control': 'public, max-age=86400',
40+
},
41+
})
42+
}
Lines changed: 175 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,175 @@
1+
import { getBaseUrl } from '@/lib/core/utils/urls'
2+
3+
export async function GET() {
4+
const baseUrl = getBaseUrl()
5+
6+
const llmsFullContent = `# Sim - AI Agent Workflow Builder
7+
8+
> Sim is an open-source AI agent workflow builder used by 60,000+ developers at startups to Fortune 500 companies. Build and deploy agentic workflows with a visual drag-and-drop canvas. SOC2 and HIPAA compliant.
9+
10+
## Overview
11+
12+
Sim provides a visual interface for building AI agent workflows. Instead of writing code, users drag and drop blocks onto a canvas and connect them to create complex AI automations. Each block represents a step in the workflow - an LLM call, a tool invocation, an API request, or a code execution.
13+
14+
## Product Details
15+
16+
- **Product Name**: Sim
17+
- **Category**: AI Development Tools / Workflow Automation
18+
- **Deployment**: Cloud (SaaS) and Self-hosted options
19+
- **Pricing**: Free tier, Pro ($20/month), Team ($40/month), Enterprise (custom)
20+
- **Compliance**: SOC2 Type II, HIPAA compliant
21+
22+
## Core Concepts
23+
24+
### Workspace
25+
A workspace is the top-level container in Sim. It holds workflows, data sources, credentials, and execution history. Users can create multiple workspaces for different projects or teams.
26+
27+
### Workflow
28+
A workflow is a directed graph of blocks that defines an agentic process. Workflows can be triggered manually, on a schedule, or via webhooks. Each workflow has a unique ID and can be versioned.
29+
30+
### Block
31+
A block is an individual step in a workflow. Types include:
32+
- **Agent Block**: Executes an LLM call with system prompts and tools
33+
- **Function Block**: Runs custom JavaScript/TypeScript code
34+
- **API Block**: Makes HTTP requests to external services
35+
- **Condition Block**: Branches workflow based on conditions
36+
- **Loop Block**: Iterates over arrays or until conditions are met
37+
- **Router Block**: Routes to different paths based on LLM classification
38+
39+
### Trigger
40+
A trigger initiates workflow execution. Types include:
41+
- **Manual**: User clicks "Run" button
42+
- **Schedule**: Cron-based scheduling (e.g., every hour, daily at 9am)
43+
- **Webhook**: HTTP endpoint that triggers on incoming requests
44+
- **Event**: Triggered by external events (email received, Slack message, etc.)
45+
46+
### Execution
47+
An execution is a single run of a workflow. It includes:
48+
- Input parameters
49+
- Block-by-block execution logs
50+
- Output data
51+
- Token usage and cost tracking
52+
- Duration and performance metrics
53+
54+
## Capabilities
55+
56+
### LLM Orchestration
57+
Sim supports all major LLM providers:
58+
- OpenAI (GPT-5.2, GPT-5.1, GPT-5, GPT-4o, GPT-4.1)
59+
- Anthropic (Claude Opus 4.5, Claude Opus 4.1, Claude Sonnet 4.5, Claude Haiku 4.5)
60+
- Google (Gemini Pro 3, Gemini Pro 3 Preview, Gemini 2.5 Pro, Gemini 2.5 Flash)
61+
- Mistral (Mistral Large, Mistral Medium)
62+
- xAI (Grok)
63+
- Perplexity
64+
- Ollama or VLLM (self-hosted open-source models)
65+
- Azure OpenAI
66+
- Amazon Bedrock
67+
68+
### Integrations
69+
100+ pre-built integrations including:
70+
- **Communication**: Slack, Discord, Email (Gmail, Outlook), SMS (Twilio)
71+
- **Productivity**: Notion, Airtable, Google Sheets, Google Docs
72+
- **Development**: GitHub, GitLab, Jira, Linear
73+
- **Data**: PostgreSQL, MySQL, MongoDB, Supabase, Pinecone
74+
- **Storage**: AWS S3, Google Cloud Storage, Dropbox
75+
- **CRM**: Salesforce, HubSpot, Pipedrive
76+
77+
### RAG (Retrieval-Augmented Generation)
78+
Built-in support for:
79+
- Document ingestion (PDF, DOCX, TXT, Markdown)
80+
- Vector database integration (Pinecone, Weaviate, Qdrant)
81+
- Semantic search and retrieval
82+
- Chunking strategies (fixed size, semantic, recursive)
83+
84+
### Code Execution
85+
- Sandboxed JavaScript/TypeScript execution
86+
- Access to npm packages
87+
- Persistent state across executions
88+
- Error handling and retry logic
89+
90+
## Use Cases
91+
92+
### Customer Support Automation
93+
- Classify incoming tickets by urgency and topic
94+
- Generate draft responses using RAG over knowledge base
95+
- Route to appropriate team members
96+
- Auto-close resolved tickets
97+
98+
### Content Generation Pipeline
99+
- Research topics using web search tools
100+
- Generate outlines and drafts with LLMs
101+
- Review and edit with human-in-the-loop
102+
- Publish to CMS platforms
103+
104+
### Data Processing Workflows
105+
- Extract data from documents (invoices, receipts, forms)
106+
- Transform and validate data
107+
- Load into databases or spreadsheets
108+
- Generate reports and summaries
109+
110+
### Sales and Marketing Automation
111+
- Enrich leads with company data
112+
- Score leads based on fit criteria
113+
- Generate personalized outreach emails
114+
- Sync with CRM systems
115+
116+
## Technical Architecture
117+
118+
### Frontend
119+
- Next.js 15 with App Router
120+
- React Flow for canvas visualization
121+
- Tailwind CSS for styling
122+
- Zustand for state management
123+
124+
### Backend
125+
- Node.js with TypeScript
126+
- PostgreSQL for persistent storage
127+
- Redis for caching and queues
128+
- S3-compatible storage for files
129+
130+
### Execution Engine
131+
- Isolated execution per workflow run
132+
- Parallel block execution where possible
133+
- Retry logic with exponential backoff
134+
- Real-time streaming of outputs
135+
136+
## Getting Started
137+
138+
1. **Sign Up**: Create a free account at ${baseUrl}
139+
2. **Create Workspace**: Set up your first workspace
140+
3. **Build Workflow**: Drag blocks onto canvas and connect them
141+
4. **Configure Blocks**: Set up LLM providers, tools, and integrations
142+
5. **Test**: Run the workflow manually to verify
143+
6. **Deploy**: Set up triggers for automated execution
144+
145+
## Links
146+
147+
- **Website**: ${baseUrl}
148+
- **Documentation**: https://docs.sim.ai
149+
- **API Reference**: https://docs.sim.ai/api
150+
- **GitHub**: https://github.com/simstudioai/sim
151+
- **Discord**: https://discord.gg/Hr4UWYEcTT
152+
- **X/Twitter**: https://x.com/simdotai
153+
- **LinkedIn**: https://linkedin.com/company/simstudioai
154+
155+
## Support
156+
157+
- **Email**: [email protected]
158+
- **Security Issues**: [email protected]
159+
- **Documentation**: https://docs.sim.ai
160+
- **Community Discord**: https://discord.gg/Hr4UWYEcTT
161+
162+
## Legal
163+
164+
- **Terms of Service**: ${baseUrl}/terms
165+
- **Privacy Policy**: ${baseUrl}/privacy
166+
- **Security**: ${baseUrl}/.well-known/security.txt
167+
`
168+
169+
return new Response(llmsFullContent, {
170+
headers: {
171+
'Content-Type': 'text/markdown; charset=utf-8',
172+
'Cache-Control': 'public, max-age=86400, s-maxage=86400',
173+
},
174+
})
175+
}

0 commit comments

Comments
 (0)