diff --git a/src/components/SectionCards.astro b/src/components/SectionCards.astro new file mode 100644 index 00000000..61686ee2 --- /dev/null +++ b/src/components/SectionCards.astro @@ -0,0 +1,80 @@ +--- +import { getCollection } from 'astro:content'; +import { SectionCards as SectionCardsReact } from './SectionCards.tsx'; + +interface Props { + basePath: string; + title?: string; + customTitles?: Record; + useDirectFiles?: boolean; +} + +const { basePath, title, customTitles = {}, useDirectFiles = false } = Astro.props; + +// Get sections - either index files from subdirectories or direct files +const allSections = await getCollection('docs', ({ id }) => { + // Must start with the base path + if (!id.startsWith(basePath)) { + return false; + } + + // Get the path after the base path + const relativePath = id.substring(basePath.length); + + // Split into parts and filter out empty strings + const pathParts = relativePath.split('/').filter(part => part !== ''); + + if (useDirectFiles) { + // For direct files, we should have exactly 1 part: [filename] + // and it should not be an index file + if (pathParts.length === 1) { + const filename = pathParts[0]; + return !filename.startsWith('index'); + } + } else { + // For index files, we should have exactly 1 part: [subdirectory] + // because index files get the ID of their parent directory in Astro + if (pathParts.length === 1) { + // Accept any single-level subdirectory - let the content collection handle validation + return true; + } + } + + return false; +}); + +const sortedSections = allSections.sort((a, b) => { + const titleA = a.data.title || a.data.linkTitle || ''; + const titleB = b.data.title || b.data.linkTitle || ''; + return titleA.localeCompare(titleB); +}); + +const sectionData = sortedSections.map(section => { + // Extract the key name from the section ID + const relativePath = section.id.substring(basePath.length); + const keyName = relativePath.split('/').filter(part => part !== '')[0]; + + // For direct files, we need to remove the file extension from the key + const cleanKey = useDirectFiles ? keyName.replace(/\.(md|mdx)$/, '') : keyName; + + // Use custom title if provided, otherwise fall back to the section title + const sectionTitle = customTitles[cleanKey] || section.data.title || section.data.linkTitle || 'Unknown Section'; + const description = section.data.description || `Learn more about ${sectionTitle}`; + + const href = `/${section.id}`; + + return { + title: sectionTitle, + description, + href + }; +}); + + +--- + + \ No newline at end of file diff --git a/src/components/SectionCards.tsx b/src/components/SectionCards.tsx new file mode 100644 index 00000000..59435728 --- /dev/null +++ b/src/components/SectionCards.tsx @@ -0,0 +1,35 @@ +import React from 'react'; +import { ServiceBox } from './ServiceBox.tsx'; + +interface Section { + title: string; + description: string; + href: string; +} + +interface SectionCardsProps { + sections: Section[]; + title?: string; +} + +export const SectionCards: React.FC = ({ + sections, + title +}) => { + return ( +
+ {title &&

{title}

} + +
+ {sections.map((section, index) => ( + + ))} +
+
+ ); +}; \ No newline at end of file diff --git a/src/content/docs/aws/capabilities/config/index.md b/src/content/docs/aws/capabilities/config/index.md index 0f90f884..e9a76f5c 100644 --- a/src/content/docs/aws/capabilities/config/index.md +++ b/src/content/docs/aws/capabilities/config/index.md @@ -1,7 +1,11 @@ --- title: Overview -description: This is a dummy description. +description: This section describes the configuration options available for LocalStack, and how to configure them to suit your needs. template: doc --- -# Config \ No newline at end of file +This section describes the configuration options, internal mechanisms, and other LocalStack-specific features that are available to users. The following figure shows an overview of the covered topics: + + + +![Understanding LocalStack configuration](/images/aws/understanding-localstack-overview.png) diff --git a/src/content/docs/aws/capabilities/index.md b/src/content/docs/aws/capabilities/index.md deleted file mode 100644 index 8356a931..00000000 --- a/src/content/docs/aws/capabilities/index.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Capabilities -description: This is a dummy description -template: doc -sidebar: - order: 5 ---- - -# Capabilities \ No newline at end of file diff --git a/src/content/docs/aws/capabilities/index.mdx b/src/content/docs/aws/capabilities/index.mdx new file mode 100644 index 00000000..ce1ebc91 --- /dev/null +++ b/src/content/docs/aws/capabilities/index.mdx @@ -0,0 +1,24 @@ +--- +title: Capabilities +description: This section describes the capabilities of LocalStack, that go beyond the core cloud service emulation, and provide additional features and capabilities for LocalStack users. +template: doc +sidebar: + order: 5 +--- + +import SectionCards from '../../../../components/SectionCards.astro'; + +By emulating cloud services locally, LocalStack enables additional features and workflows that are not feasible on the cloud. + + diff --git a/src/content/docs/aws/capabilities/networking/accessing-endpoint-url.mdx b/src/content/docs/aws/capabilities/networking/accessing-endpoint-url.mdx index 10112dfa..ec94da76 100644 --- a/src/content/docs/aws/capabilities/networking/accessing-endpoint-url.mdx +++ b/src/content/docs/aws/capabilities/networking/accessing-endpoint-url.mdx @@ -1,6 +1,6 @@ --- title: Accessing LocalStack via the endpoint URL -description: This is a dummy description +description: This documentation provides step-by-step guidance on how to access LocalStack services via the endpoint URL and troubleshoot common issues. template: doc sidebar: order: 5 diff --git a/src/content/docs/aws/capabilities/networking/accessing-resources-created.md b/src/content/docs/aws/capabilities/networking/accessing-resources-created.md index 264620f1..63fd17a7 100644 --- a/src/content/docs/aws/capabilities/networking/accessing-resources-created.md +++ b/src/content/docs/aws/capabilities/networking/accessing-resources-created.md @@ -1,6 +1,6 @@ --- title: Accessing a resource created by LocalStack -description: This is a dummy description +description: This guide will explore different scenarios and provide detailed instructions on accessing resources created by LocalStack under different scenarios. template: doc sidebar: order: 6 diff --git a/src/content/docs/aws/capabilities/networking/index.md b/src/content/docs/aws/capabilities/networking/index.md index 49ad3dd0..993da3cb 100644 --- a/src/content/docs/aws/capabilities/networking/index.md +++ b/src/content/docs/aws/capabilities/networking/index.md @@ -1,10 +1,7 @@ --- title: Overview -description: This is a dummy description +description: This section describes the networking capabilities of LocalStack, and how to configure them to suit your needs. template: doc sidebar: order: 1 --- - -# Networking - diff --git a/src/content/docs/aws/enterprise/enterprise-support.md b/src/content/docs/aws/enterprise/enterprise-support.md index 16a7c8b3..2fcf8877 100644 --- a/src/content/docs/aws/enterprise/enterprise-support.md +++ b/src/content/docs/aws/enterprise/enterprise-support.md @@ -1,6 +1,6 @@ --- title: Enterprise Support -description: This is a dummy description +description: This page describes the support options available for LocalStack Enterprise customers. template: doc sidebar: order: 6 @@ -67,4 +67,4 @@ You need to fill out the following fields, which are mandatory to open a new tic - **CI Issue?** - If the query is related to a CI issue, select the one that best fits your query from the dropdown. - **Operating system** - From the dropdown, select the operating system you are using. - **Affected Services** - From the dropdown, select the AWS service that is affected in your query. -- **File upload** - Here you can provide any additional files that you believe would be helpful for LocalStack support (e.g., screenshots, log files, etc.). \ No newline at end of file +- **File upload** - Here you can provide any additional files that you believe would be helpful for LocalStack support (e.g., screenshots, log files, etc.). diff --git a/src/content/docs/aws/enterprise/index.md b/src/content/docs/aws/enterprise/index.md deleted file mode 100644 index 80f4704e..00000000 --- a/src/content/docs/aws/enterprise/index.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -title: Overview -description: This is a dummy description -template: doc -sidebar: - order: 1 ---- - -# LocalStack Enterprise - -LocalStack Enterprise provides the most sophisticated and secure setup we offer, with advanced features and capabilities for large organizations and teams. This section provides guides and resources to help you get started with LocalStack Enterprise. \ No newline at end of file diff --git a/src/content/docs/aws/enterprise/index.mdx b/src/content/docs/aws/enterprise/index.mdx new file mode 100644 index 00000000..4bd5e474 --- /dev/null +++ b/src/content/docs/aws/enterprise/index.mdx @@ -0,0 +1,23 @@ +--- +title: Overview +description: LocalStack Enterprise provides the most sophisticated and secure setup we offer, with advanced features and capabilities for large organizations and teams. +template: doc +sidebar: + order: 1 +--- + +import SectionCards from '../../../../components/SectionCards.astro'; + +This section provides guides and resources to help you get started with LocalStack Enterprise. + + diff --git a/src/content/docs/aws/getting-started/index.md b/src/content/docs/aws/getting-started/index.md index d01692d9..f23aa0cb 100644 --- a/src/content/docs/aws/getting-started/index.md +++ b/src/content/docs/aws/getting-started/index.md @@ -1,6 +1,6 @@ --- title: Overview -description: This is a dummy description +description: This section describes how to get started with LocalStack using a variety of options, and provides details on how LocalStack can be configured to fit the needs of a local cloud sandbox for development, testing, and experimentation. template: doc sidebar: order: 1 diff --git a/src/content/docs/aws/integrations/app-frameworks/index.md b/src/content/docs/aws/integrations/app-frameworks/index.md new file mode 100644 index 00000000..4b8f3d07 --- /dev/null +++ b/src/content/docs/aws/integrations/app-frameworks/index.md @@ -0,0 +1,7 @@ +--- +title: Overview +description: Use LocalStack with your application frameworks to develop and test your applications locally. +template: doc +sidebar: + order: 1 +--- \ No newline at end of file diff --git a/src/content/docs/aws/integrations/aws-native-tools/index.md b/src/content/docs/aws/integrations/aws-native-tools/index.md new file mode 100644 index 00000000..f696662a --- /dev/null +++ b/src/content/docs/aws/integrations/aws-native-tools/index.md @@ -0,0 +1,7 @@ +--- +title: Overview +description: Use LocalStack with AWS Native tools to develop, deploy, and manage your infrastructure locally. +template: doc +sidebar: + order: 1 +--- \ No newline at end of file diff --git a/src/content/docs/aws/integrations/aws-sdks/index.md b/src/content/docs/aws/integrations/aws-sdks/index.md new file mode 100644 index 00000000..58b50c20 --- /dev/null +++ b/src/content/docs/aws/integrations/aws-sdks/index.md @@ -0,0 +1,22 @@ +--- +title: Overview +description: Use LocalStack with AWS SDKs to manage your AWS resources locally. +template: doc +sidebar: + order: 1 +--- + +## Introduction + +LocalStack integrates with official AWS Software Development Kits (SDKs) so you can connect to LocalStack services using the same SDKs you use for AWS services. +This lets you develop and test your applications locally without connecting to the cloud. + +## How to connect with AWS SDKs? + +To connect to LocalStack services using AWS SDKs, you can use one of the following methods: + +- **Manual configuration:** Manually configure the SDK to connect to LocalStack services by setting the endpoint URL to `http://localhost:4566` or `localhost.localstack.cloud:4566`. +This can also be specified using a [profile or an environment variable](https://docs.aws.amazon.com/sdkref/latest/guide/feature-ss-endpoints.html). +- **Transparent endpoint injection (recommended):** Connect to LocalStack services without modifying your application code. +Transparent endpoint injection uses the integrated DNS server to resolve AWS API calls to target LocalStack. + Refer to the [Transparent Endpoint Injection](/aws/capabilities/networking/transparent-endpoint-injection/) guide for more information. diff --git a/src/content/docs/aws/integrations/containers/index.md b/src/content/docs/aws/integrations/containers/index.md new file mode 100644 index 00000000..52aada2f --- /dev/null +++ b/src/content/docs/aws/integrations/containers/index.md @@ -0,0 +1,7 @@ +--- +title: Overview +description: Use LocalStack with container-based development tools to manage and test your infrastructure locally. +template: doc +sidebar: + order: 1 +--- \ No newline at end of file diff --git a/src/content/docs/aws/integrations/continuous-integration/index.md b/src/content/docs/aws/integrations/continuous-integration/index.md index 4afa4a85..e5b82a5e 100644 --- a/src/content/docs/aws/integrations/continuous-integration/index.md +++ b/src/content/docs/aws/integrations/continuous-integration/index.md @@ -1,6 +1,6 @@ --- title: Overview -description: Run LocalStack in your CI environment to test your application against a high-fidelity cloud emulator. +description: Use LocalStack in your CI environment to run tests against your AWS infrastructure in a high-fidelity cloud emulator. template: doc sidebar: order: 1 diff --git a/src/content/docs/aws/integrations/index.mdx b/src/content/docs/aws/integrations/index.mdx index 478ca1e7..b4c4c6f4 100644 --- a/src/content/docs/aws/integrations/index.mdx +++ b/src/content/docs/aws/integrations/index.mdx @@ -4,6 +4,8 @@ description: Use your favorite cloud development tools with LocalStack. template: doc --- +import SectionCards from '../../../../components/SectionCards.astro'; + LocalStack supports a wide range of tools from the cloud development ecosystem. This section of the documentation covers tools that are officially supported by LocalStack. @@ -21,4 +23,18 @@ We strive to make the integration of LocalStack into your workflow as seamless a Sometimes it's as easy as calling one of our wrapper tools, like `awslocal`, a drop-in replacement for the `aws` CLI. Other times there is a bit of configuration involved. -Here is a list of tools we support, and documentation on how to integrate LocalStack: \ No newline at end of file +Here is a list of tools we support, and documentation on how to integrate LocalStack. + + diff --git a/src/content/docs/aws/integrations/infrastructure-as-code/index.md b/src/content/docs/aws/integrations/infrastructure-as-code/index.md new file mode 100644 index 00000000..d9690ea5 --- /dev/null +++ b/src/content/docs/aws/integrations/infrastructure-as-code/index.md @@ -0,0 +1,7 @@ +--- +title: Overview +description: Use LocalStack with Infrastructure as Code tools to validate your infrastructure deployments and run tests against them. +template: doc +sidebar: + order: 1 +--- \ No newline at end of file diff --git a/src/content/docs/aws/integrations/messaging/index.md b/src/content/docs/aws/integrations/messaging/index.md new file mode 100644 index 00000000..4ba34ed7 --- /dev/null +++ b/src/content/docs/aws/integrations/messaging/index.md @@ -0,0 +1,7 @@ +--- +title: Overview +description: Use LocalStack with messaging tools, such as Kafka, to test your messaging infrastructure locally. +template: doc +sidebar: + order: 1 +--- \ No newline at end of file diff --git a/src/content/docs/aws/integrations/testing/index.md b/src/content/docs/aws/integrations/testing/index.md new file mode 100644 index 00000000..6f112426 --- /dev/null +++ b/src/content/docs/aws/integrations/testing/index.md @@ -0,0 +1,7 @@ +--- +title: Overview +description: Use LocalStack with testing tools & utilities to test your application infrastructure locally. +template: doc +sidebar: + order: 1 +--- diff --git a/src/content/docs/aws/sample-apps.mdx b/src/content/docs/aws/sample-apps.mdx index d54af2b8..30b1b51e 100644 --- a/src/content/docs/aws/sample-apps.mdx +++ b/src/content/docs/aws/sample-apps.mdx @@ -1,6 +1,6 @@ --- title: Sample apps -description: This is a dummy description +description: Sample apps to help LocalStack users adopt real-world scenarios to rapidly and conveniently create, configure, and deploy applications locally. template: doc sidebar: order: 4 @@ -8,7 +8,4 @@ sidebar: import ApplicationsShowcase from "../../../components/ApplicationsShowcase.astro"; -# Applications -LocalStack Applications provide sample templates to help LocalStack users adopt real-world scenarios to rapidly and conveniently create, configure, and deploy applications locally. These sample applications help you establish your foundations in LocalStack and offer you a wide range of use cases and scenarios, all supported by LocalStack, to help you develop and test cloud applications efficiently. - diff --git a/src/content/docs/aws/services/index.mdx b/src/content/docs/aws/services/index.mdx index 2b655e9e..4449f0d7 100644 --- a/src/content/docs/aws/services/index.mdx +++ b/src/content/docs/aws/services/index.mdx @@ -8,6 +8,4 @@ sidebar: import SearchableAwsServices from '../../../../components/SearchableAwsServices.astro'; -Browse LocalStack's implemented AWS services and explore their comprehensive feature sets. Each service provides detailed documentation on APIs, configuration options, and practical examples to help you get started quickly. - diff --git a/src/content/docs/aws/tooling/index.md b/src/content/docs/aws/tooling/index.md deleted file mode 100644 index 5ebd8ad4..00000000 --- a/src/content/docs/aws/tooling/index.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: Overview -description: Increase your development efficiency with LocalStack Cloud Developer Tools. -template: doc ---- - -The core of LocalStack is the [cloud service emulation](/aws/services/). -But LocalStack also provides a variety of tools to make your life as a cloud developer easier. - -With LocalStack Cloud Developer Tools you can: -* persist the state of the AWS services running in your LocalStack instance via **Cloud Pods** -* hot-swap your Lambda code changes instantly -* debug Lambda executions directly from your IDE -* inject LocalStack service endpoints automatically into your application -* ... - and much more! diff --git a/src/content/docs/aws/tooling/index.mdx b/src/content/docs/aws/tooling/index.mdx new file mode 100644 index 00000000..642c6c3d --- /dev/null +++ b/src/content/docs/aws/tooling/index.mdx @@ -0,0 +1,19 @@ +--- +title: Overview +description: Increase your development efficiency with LocalStack Cloud Developer Tools. +template: doc +--- + +import SectionCards from '../../../../components/SectionCards.astro'; + +The core of LocalStack is the [cloud service emulation](/aws/services/). +But LocalStack also provides a variety of tools to make your life as a cloud developer easier. + + diff --git a/src/content/docs/aws/tooling/localstack-sdks/index.md b/src/content/docs/aws/tooling/localstack-sdks/index.md index db0d1e17..6ee159d1 100644 --- a/src/content/docs/aws/tooling/localstack-sdks/index.md +++ b/src/content/docs/aws/tooling/localstack-sdks/index.md @@ -1,10 +1,7 @@ --- title: Overview -description: This is a dummy description +description: LocalStack offers various developer endpoints and SDKs provides a programmatic and easy way to interact with them. template: doc sidebar: order: 1 --- - -# LocalStack SDKs -LocalStack offers various developer endpoints and SDKs provides a programmatic and easy way to interact with them. \ No newline at end of file diff --git a/src/content/docs/snowflake/capabilities/index.mdx b/src/content/docs/snowflake/capabilities/index.mdx new file mode 100644 index 00000000..2a67e310 --- /dev/null +++ b/src/content/docs/snowflake/capabilities/index.mdx @@ -0,0 +1,19 @@ +--- +title: Overview +description: Advanced capabilities and features available in LocalStack for Snowflake. +template: doc +--- + +import SectionCards from '../../../../components/SectionCards.astro'; + +LocalStack for Snowflake provides advanced capabilities that enhance your development workflow and enable sophisticated testing scenarios beyond basic Snowflake service emulation. + + diff --git a/src/content/docs/snowflake/features/iceberg-tables.md b/src/content/docs/snowflake/features/iceberg-tables.md index 9cf5914c..68b97e67 100644 --- a/src/content/docs/snowflake/features/iceberg-tables.md +++ b/src/content/docs/snowflake/features/iceberg-tables.md @@ -1,6 +1,6 @@ --- title: Iceberg Tables -description: This is a dummy description. +description: Get started with Iceberg Tables in LocalStack for Snowflake --- ## Introduction diff --git a/src/content/docs/snowflake/integrations/index.mdx b/src/content/docs/snowflake/integrations/index.mdx new file mode 100644 index 00000000..aa93862e --- /dev/null +++ b/src/content/docs/snowflake/integrations/index.mdx @@ -0,0 +1,28 @@ +--- +title: Overview +description: Use your favorite development tools with LocalStack for Snowflake. +template: doc +--- + +import SectionCards from '../../../../components/SectionCards.astro'; + +LocalStack for Snowflake supports a wide range of tools and integrations from the data development ecosystem. +This section covers tools that are officially supported and tested with LocalStack for Snowflake. + + diff --git a/src/content/docs/snowflake/snowflake-services.md b/src/content/docs/snowflake/snowflake-services.md index cc25e4ab..08d3329e 100644 --- a/src/content/docs/snowflake/snowflake-services.md +++ b/src/content/docs/snowflake/snowflake-services.md @@ -1,9 +1,5 @@ --- title: Snowflake Services -description: This is a dummy description +description: Develop your understanding of various Snowflake emulator features and check their coverage. template: doc --- - -# Snowflake Services - -Browse implemented Snowflake services and check their feature coverage. diff --git a/src/content/docs/snowflake/sql-functions.md b/src/content/docs/snowflake/sql-functions.md index be0bd6cb..59dbc6c0 100644 --- a/src/content/docs/snowflake/sql-functions.md +++ b/src/content/docs/snowflake/sql-functions.md @@ -1,6 +1,6 @@ --- title: SQL Functions Coverage -description: This is a dummy description +description: Overview of the implemented Snowflake SQL functions in LocalStack template: doc ---