@seeka-labs/cli-apps 3.8.6 → 3.8.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/dist/ai-context/internal/examples/v1/activecampaign/_ai-summary.md +16 -23
  2. package/dist/ai-context/internal/examples/v1/complianz/_ai-summary.md +30 -16
  3. package/dist/ai-context/internal/examples/v1/ivvy/_ai-summary.md +19 -20
  4. package/dist/ai-context/internal/examples/v1/me-and-u-connect/_ai-summary.md +17 -18
  5. package/dist/ai-context/internal/examples/v1/me-and-u-manage/_ai-summary.md +16 -24
  6. package/dist/ai-context/internal/examples/v1/nowbookit/_ai-summary.md +30 -29
  7. package/dist/ai-context/internal/examples/v1/sevenrooms/_ai-summary.md +25 -25
  8. package/dist/ai-context/internal/examples/v1/tradable-bits/_ai-summary.md +27 -25
  9. package/dist/ai-context/internal/examples/v1/transcend/_ai-summary.md +17 -45
  10. package/dist/ai-context/internal/examples/v2/calendly/_ai-summary.md +17 -16
  11. package/dist/ai-context/internal/examples/v2/clarity/_ai-summary.md +24 -13
  12. package/dist/ai-context/internal/examples/v2/google-bigquery/_ai-summary.md +26 -14
  13. package/dist/ai-context/internal/examples/v2/klaviyo-events/_ai-summary.md +17 -24
  14. package/dist/ai-context/internal/examples/v2/navitas/_ai-summary.md +29 -15
  15. package/dist/ai-context/internal/examples/v2/trustarc/_ai-summary.md +18 -14
  16. package/dist/ai-context/internal/examples/v2/typeform/_ai-summary.md +45 -21
  17. package/dist/ai-context/internal/examples/v2/webhook/_ai-summary.md +32 -17
  18. package/dist/ai-context/internal/examples/v2/yeastar/_ai-summary.md +13 -18
  19. package/dist/ai-context/internal/examples/v3/google-ads/_ai-summary.md +18 -18
  20. package/dist/index.cjs +8 -7
  21. package/dist/index.cjs.map +2 -2
  22. package/dist/init-template/app/browser/package.json +1 -1
  23. package/dist/init-template/app/lib/package.json +1 -1
  24. package/dist/init-template/app/server-azurefunc/package.json +1 -1
  25. package/dist/init-template/app/ui/package.json +1 -1
  26. package/package.json +2 -2
@@ -1,56 +1,28 @@
1
1
  # AI Summary for Seeka App: Transcend
2
2
 
3
- ## Overview
4
-
5
- **App Name:** Transcend
6
- **Purpose:** The Transcend app integrates with the Transcend data privacy platform to manage consent and data rights, ensuring compliance with privacy regulations.
7
- **Template Version:** V1
8
- **Template:** azurefunc
9
- **Components:** Server
10
- **Tags:** Privacy, Consent Management, Data Rights, Compliance
3
+ ## Purpose and Functionality
4
+ The "Transcend" app is a Seeka application designed to integrate with the Transcend data privacy platform. Its primary purpose is to manage consent and data rights, ensuring compliance with privacy regulations. It handles webhooks from Seeka, processes data, and interacts with Azure services to manage installations and state.
11
5
 
12
6
  ## Key Implementation Patterns
13
-
14
- 1. **Azure Functions:** The app is built using Azure Functions, allowing it to handle serverless operations efficiently. It includes HTTP-triggered functions for webhook handling and health checks.
15
-
16
- 2. **Webhook Handling:** The app processes various webhook events from Seeka, such as app installations, updates, and uninstalls. It validates webhook signatures to ensure security.
17
-
18
- 3. **State Management:** The app uses Redis for managing the state of installations, allowing for efficient retrieval and update operations.
19
-
20
- 4. **Queue Processing:** Azure Storage Queues are utilized for offloading long-running operations, ensuring that Azure Function execution time limits are respected.
21
-
22
- 5. **Logging:** Centralized logging is implemented using Winston, with optional integration with Seq for advanced log management.
7
+ - **Azure Functions**: The app is built using Azure Functions, which allows it to handle HTTP requests, manage queues, and perform scheduled tasks.
8
+ - **Webhook Handling**: The app processes various types of webhooks from Seeka, including installation, settings updates, and activity notifications.
9
+ - **State Management**: Uses Redis for storing the state of app installations and other necessary data.
10
+ - **Logging**: Utilizes Winston for centralized logging, with optional Seq integration for log management.
23
11
 
24
12
  ## External APIs/Services Integrated
25
-
26
- - **Azure Functions:** For serverless function execution.
27
- - **Azure Storage Queue:** For message queuing and processing.
28
- - **Redis:** For state management.
29
- - **Ngrok:** For exposing local development environments to the internet.
30
- - **Seq (optional):** For advanced logging and monitoring.
13
+ - **Transcend Platform**: Integrates with Transcend for consent and data rights management.
14
+ - **Azure Services**: Uses Azure Storage Queues for managing asynchronous tasks and Azure Functions for serverless execution.
15
+ - **Redis**: Employed for state management, with optional Upstash integration for cloud-based Redis services.
16
+ - **Ngrok**: Used for exposing local development environments to the internet for testing purposes.
31
17
 
32
18
  ## Important Data Transformations
33
-
34
- - **Webhook Payload Processing:** The app parses and processes JSON payloads from incoming webhooks, validating signatures and handling various event types.
35
- - **State Management:** Transforms installation data for storage and retrieval in Redis.
36
- - **Queue Message Handling:** Transforms data into queue messages for deferred processing.
19
+ - **Webhook Payload Processing**: The app parses and validates webhook payloads, ensuring they are correctly formatted and signed before processing.
20
+ - **State Updates**: Transforms webhook data into state updates for installations, managing lifecycle events like installation, updates, and uninstallation.
37
21
 
38
22
  ## Notable Code Patterns
23
+ - **Function Composition**: The app uses a modular approach, with distinct functions for handling different webhook types, making it easy to extend and maintain.
24
+ - **Error Handling**: Implements robust error handling and logging to ensure any issues are captured and can be diagnosed.
25
+ - **Environment Configuration**: Utilizes environment variables for configuration, supporting both local development and production deployments.
26
+ - **Queue Management**: Demonstrates how to offload long-running tasks to Azure Storage Queues, ensuring compliance with Azure Function execution time limits.
39
27
 
40
- 1. **Webhook Signature Validation:** Ensures that incoming webhooks are authenticated using a secret key, enhancing security.
41
-
42
- 2. **Centralized Logging with Winston:** Provides structured logging across the app, with optional Seq integration for enhanced log management.
43
-
44
- 3. **Azure Function Triggers:** Utilizes HTTP triggers for webhooks and health checks, and timer triggers for scheduled operations.
45
-
46
- 4. **State Management Abstraction:** Abstracts state management operations, allowing for easy replacement of Redis with another provider if needed.
47
-
48
- 5. **Development Environment Configuration:** Provides comprehensive setup instructions for local development, including emulation of Azure services and use of Ngrok for testing.
49
-
50
- ## Additional Information
51
-
52
- - **Development Setup:** Detailed instructions are provided for setting up the development environment, including dependencies, local storage emulation, and debugging configurations.
53
- - **Live URL Exposure:** Ngrok is used to expose the app locally for testing purposes, with instructions for configuration and use.
54
- - **Sample Functions:** Includes examples of webhook handling, queue processing, and polling to demonstrate common patterns and use cases.
55
-
56
- This summary provides a comprehensive overview of the Transcend app's architecture and implementation, highlighting key patterns and integrations that can be leveraged in similar projects.
28
+ This summary provides a comprehensive overview of the app's architecture and functionality, highlighting its integration with external services and key implementation patterns.
@@ -1,38 +1,39 @@
1
- # AI Summary for Calendly Integration App
1
+ # AI Summary for Seeka Calendly Integration App
2
2
 
3
3
  ## Overview
4
4
 
5
- The Calendly integration app is designed to track meeting bookings and schedule events from Calendly. It serves as a bridge between Calendly and Seeka's ecosystem, enabling seamless integration of scheduling functionalities into CRM workflows. The app leverages webhooks to handle various events related to app installation, updates, and uninstallation.
5
+ The Seeka Calendly Integration App is designed to facilitate the tracking of meeting bookings and scheduling events through integration with Calendly. It leverages webhooks to interact with Calendly and manage event data, making it a useful tool for CRM and scheduling purposes.
6
6
 
7
7
  ## Key Implementation Patterns
8
8
 
9
- 1. **Monorepo Structure with Yarn Workspaces**: The app is organized using Yarn workspaces, allowing for modular development across different components like `browser`, `ui`, and `server`. This structure facilitates efficient dependency management and streamlined build processes.
9
+ 1. **Monorepo Structure**: The app uses a monorepo setup with Yarn workspaces to manage multiple components (`browser`, `ui`, `server`) under a single repository. This structure allows for efficient dependency management and modular development.
10
10
 
11
- 2. **Azure Functions**: The app uses Azure Functions as its serverless backend, providing scalable and event-driven execution of server-side logic. This is evident from the use of `@azure/functions` for HTTP request handling.
11
+ 2. **Azure Functions**: The server component is built on Azure Functions, enabling serverless execution of code in response to HTTP requests (webhooks).
12
12
 
13
- 3. **Webhook Handling**: The app extensively uses webhooks to receive and process events from Seeka and Calendly. It validates webhook signatures to ensure secure communication and processes different webhook types to update installation states or trigger browser SDK plugins.
13
+ 3. **Webhooks**: The app extensively uses webhooks to receive and handle events from Calendly. This includes installation, uninstallation, and updates to app settings.
14
14
 
15
- 4. **Logging with Winston**: The app employs the Winston logging library to maintain detailed logs of webhook processing, aiding in debugging and monitoring.
15
+ 4. **Logging**: The app uses the `winston` library for structured logging, which is crucial for debugging and monitoring the webhook interactions.
16
16
 
17
17
  ## External APIs/Services Integrated
18
18
 
19
- - **Calendly**: The app integrates with Calendly to track and manage event bookings.
20
- - **Azure Functions**: Used for deploying serverless functions that handle HTTP requests and process webhooks.
21
- - **Seeka SDK**: The app utilizes Seeka's SDK for handling webhook payloads and managing app installation states.
19
+ - **Calendly API**: The app integrates with Calendly to track and manage meeting bookings and scheduling events.
20
+ - **Azure Functions**: Utilized for serverless execution, allowing the app to handle HTTP requests efficiently.
22
21
 
23
22
  ## Important Data Transformations
24
23
 
25
- - **Webhook Payload Parsing**: Incoming webhook payloads are parsed and validated to ensure they are correctly formatted and signed. This involves converting JSON strings into structured objects and verifying signatures.
26
- - **Installation State Management**: The app manages the state of installations by creating, updating, or deleting records based on webhook events. This involves transforming webhook payloads into installation state objects.
24
+ - **Webhook Payload Handling**: The app processes incoming webhook payloads to extract relevant data such as installation IDs and event details. This data is then used to update installation states or trigger other actions.
25
+ - **Signature Validation**: Incoming webhook requests are validated using a signature to ensure authenticity and security.
27
26
 
28
27
  ## Notable Code Patterns
29
28
 
30
- 1. **Webhook Signature Validation**: The app includes a robust mechanism for validating webhook signatures using environment secrets, ensuring that only legitimate requests are processed.
29
+ 1. **Webhook Signature Validation**: The app includes a robust mechanism to validate webhook signatures, ensuring that only legitimate requests are processed.
31
30
 
32
- 2. **Service Initialization**: The `startServices` function is used to initialize necessary services before processing webhooks, ensuring that all dependencies are ready for use.
31
+ 2. **Installation Management**: The app maintains a state of installations, allowing it to handle installation, update, and uninstallation events effectively.
33
32
 
34
- 3. **Error Handling and Logging**: Comprehensive error handling is implemented with detailed logging using Winston, capturing both successful and failed webhook processing attempts.
33
+ 3. **Service Initialization**: The `startServices` function is used to initialize necessary services before processing webhook requests, ensuring that all dependencies are ready for use.
35
34
 
36
- 4. **Modular Development with TypeScript Interfaces**: The use of TypeScript interfaces for defining data structures (e.g., `ICalendlyBrowserSdkPluginConfig`, `EnrichSeekaProfileFromCalendlyRequest`) promotes type safety and reusability across the codebase.
35
+ 4. **Error Handling**: The app includes comprehensive error handling to manage exceptions and provide meaningful responses in case of failures.
37
36
 
38
- This summary provides a high-level understanding of the Calendly integration app's architecture and implementation, highlighting its use of modern development practices and integration with external services.
37
+ 5. **Version Management**: The app uses Yarn scripts to automate version bumping and deployment processes, ensuring consistent version control across all components.
38
+
39
+ This summary provides a high-level understanding of the Seeka Calendly Integration App's architecture and functionality, highlighting key patterns and integrations that could be useful for similar applications.
@@ -1,25 +1,36 @@
1
+ ```markdown
1
2
  # AI Summary for Clarity App
2
3
 
4
+ ## Overview
5
+ The Clarity app is designed to integrate Microsoft Clarity for session recording and heatmap analytics. It functions as both a browser plugin and a server component, leveraging Azure Functions to handle webhooks for app installation, updates, and uninstallation events.
6
+
3
7
  ## Purpose and Functionality
4
- The Clarity app is designed to integrate Microsoft Clarity for session recording and heatmap analytics. It serves as a browser plugin and server component to capture user interactions and visualize them for analytics purposes. This app is particularly useful for understanding user behavior on websites and improving user experience through detailed session data and heatmaps.
8
+ - **Session Recording and Heatmap Analytics**: Integrates Microsoft Clarity to provide insights into user interactions through session recordings and heatmaps.
9
+ - **Webhook Handling**: Manages various webhook events related to app installation, updates, and uninstallation using Azure Functions.
5
10
 
6
11
  ## Key Implementation Patterns
7
- - **Monorepo Structure**: The app uses a monorepo managed by Yarn workspaces, allowing for organized management of both browser and server components.
8
- - **Azure Functions**: The server component is implemented using Azure Functions, providing a scalable and serverless architecture for handling HTTP requests.
9
- - **Webhook Handling**: The app processes various webhook events related to app installation, updates, and uninstallation. This is crucial for maintaining the app's state and ensuring proper integration with Seeka's platform.
12
+ - **Monorepo Structure**: Utilizes Yarn workspaces to manage multiple packages (`browser` and `server`) within a single repository.
13
+ - **Azure Functions**: Employs Azure Functions for serverless execution of webhook event handlers.
14
+ - **Logging**: Implements detailed logging using the `winston` library to track webhook processing and errors.
10
15
 
11
16
  ## External APIs/Services Integrated
12
- - **Microsoft Clarity**: The primary integration is with Microsoft Clarity for capturing session data and generating heatmaps.
13
- - **Azure Functions**: Utilized for server-side logic, enabling the app to handle HTTP requests and process webhooks efficiently.
14
- - **Seeka SDK**: The app leverages the Seeka SDK for handling webhook payloads and managing app installation states.
17
+ - **Microsoft Clarity**: For session recording and heatmap analytics.
18
+ - **Azure Functions**: Used for handling HTTP requests and executing server-side logic.
19
+ - **Seeka SDK**: Utilizes `@seeka-labs/sdk-apps-server` for webhook payload types and signature validation.
15
20
 
16
21
  ## Important Data Transformations
17
- - **Webhook Payload Parsing**: The app parses incoming webhook payloads to extract relevant information for processing installation, update, and uninstallation events.
18
- - **Installation State Management**: Transforms webhook data into installation state objects, which are used to track the app's current state and permissions granted by users.
22
+ - **Webhook Payload Parsing**: Parses and validates JSON webhook payloads to ensure they are correctly processed.
23
+ - **Installation State Management**: Transforms and manages installation states through functions like `createOrUpdateInstallation` and `deleteInstallation`.
19
24
 
20
25
  ## Notable Code Patterns
21
- - **Error Handling with Logging**: The app uses the Winston logging library to log detailed information about webhook processing, including errors and performance profiling.
22
- - **Signature Validation**: Implements a security pattern to validate webhook signatures, ensuring that requests are authentic and have not been tampered with.
23
- - **Conditional Logic for Webhook Types**: Uses a switch-case structure to handle different types of webhook events, allowing for clear and organized processing logic.
26
+ - **Webhook Signature Validation**: Uses `throwOnInvalidWebhookSignature` to ensure webhook calls are legitimate.
27
+ - **Conditional Logic for Webhook Types**: Implements a switch-case structure to handle different webhook call types (`AppInstalled`, `AppInstallSettingsUpdated`, `AppUninstalled`, `BrowserSdkPlugin`).
28
+ - **Error Handling and Logging**: Comprehensive error handling with logging to capture and report issues during webhook processing.
29
+
30
+ ## Reusable Code Patterns
31
+ - **Webhook Handler Template**: The `seekaAppWebhook` function can be adapted for handling various webhook events in other applications.
32
+ - **Installation Management Utilities**: Functions like `createOrUpdateInstallation` and `deleteInstallation` provide a reusable pattern for managing app installations.
33
+ - **Logging Setup with Winston**: The logging setup using `winston` is a robust pattern for any application requiring detailed logging and error tracking.
24
34
 
25
- This summary provides a high-level overview of the Clarity app's architecture and implementation, highlighting its use of modern development practices and integration with external services for enhanced analytics capabilities.
35
+ This summary provides a high-level understanding of the Clarity app's architecture and implementation, focusing on its integration with Microsoft Clarity, use of Azure Functions, and robust handling of webhook events.
36
+ ```
@@ -1,25 +1,37 @@
1
- # AI Summary for Google BigQuery Seeka App
1
+ ```markdown
2
+ # AI-Focused Summary for Google BigQuery Seeka App
3
+
4
+ ## Overview
5
+ The `google-bigquery` Seeka app is designed to integrate with Google BigQuery, enabling the export of Seeka activity data for advanced analytics and reporting. This app is built using the Azure Functions framework, leveraging serverless architecture to handle webhook events from Seeka.
2
6
 
3
7
  ## Purpose and Functionality
4
- The Google BigQuery Seeka app is designed to integrate with Google BigQuery to export Seeka activity data for advanced analytics and reporting. It processes webhooks from Seeka, validates them, and manages the installation state of the app. The app primarily handles data export tasks to Google BigQuery, ensuring that the necessary datasets and tables exist before pushing data.
8
+ - **Data Export**: Facilitates the transfer of Seeka activity data to Google BigQuery.
9
+ - **Analytics and Reporting**: Provides a foundation for advanced data analysis by integrating with BigQuery.
10
+ - **Webhook Handling**: Processes various Seeka webhook events such as app installation, uninstallation, and activity acceptance.
5
11
 
6
12
  ## Key Implementation Patterns
7
- - **Webhook Handling**: The app listens for HTTP POST requests on the `/webhook/seeka/app` route, processing different types of webhook payloads such as `AppInstalled`, `AppInstallSettingsUpdated`, `AppUninstalled`, and `ActivityAccepted`.
8
- - **Signature Validation**: Webhook requests are validated using a signature to ensure authenticity, with an option to disable this validation for testing purposes.
9
- - **State Management**: The app manages installation states using functions like `createOrUpdateInstallation`, `deleteInstallation`, and `tryGetInstallation`.
10
- - **Service Initialization**: Services are started using `startServices` to prepare the app for processing webhook calls.
13
+ - **Azure Functions**: Utilizes Azure Functions for serverless execution of webhook handlers.
14
+ - **Modular Code Structure**: Organized into multiple modules for handling different webhook events and BigQuery interactions.
15
+ - **Logging**: Employs `winston` for structured logging and profiling of webhook requests.
11
16
 
12
17
  ## External APIs/Services Integrated
13
- - **Google BigQuery**: The app integrates with Google BigQuery to check for the existence of datasets and tables and to export data.
14
- - **Azure Functions**: The app is built using Azure Functions, enabling serverless execution of the webhook handler.
18
+ - **Google BigQuery**: The app interacts with BigQuery to check dataset and table existence and to push data.
19
+ - **Azure Functions**: Used for deploying and running serverless functions that handle incoming webhooks.
15
20
 
16
21
  ## Important Data Transformations
17
- - **Payload Sanitization**: The app sanitizes BigQuery records using `sanitiseBigQueryRecord` to ensure data integrity before export.
18
- - **Activity Payload Processing**: Specific fields in activity payloads are transformed using functions like `activityPayloadFieldsToJsonStringify` and `activityPayloadFieldsToRemove` to prepare them for BigQuery.
22
+ - **Webhook Payload Processing**: Parses and validates incoming webhook payloads to ensure integrity and security.
23
+ - **Data Sanitization**: Utilizes functions like `sanitiseBigQueryRecord` to prepare data for BigQuery ingestion.
24
+ - **Activity Data Transformation**: Converts activity payload fields to JSON strings and removes unnecessary fields before exporting.
19
25
 
20
26
  ## Notable Code Patterns
21
- - **Logging with Winston**: The app uses the Winston library for structured logging, providing detailed logs for webhook processing and error handling.
22
- - **Environment Variable Usage**: The app relies on environment variables for configuration, such as `SEEKA_APP_SECRET` for signature validation.
23
- - **Yarn Workspaces**: The project uses Yarn workspaces to manage dependencies and scripts across multiple packages, facilitating organized development and deployment processes.
27
+ - **Webhook Signature Validation**: Implements a security check to validate webhook signatures using a secret key.
28
+ - **Service Initialization**: Uses `startServices` to initialize necessary services before processing webhook events.
29
+ - **Installation State Management**: Manages app installation states through functions like `createOrUpdateInstallation` and `deleteInstallation`.
30
+
31
+ ## Reusable Code Patterns
32
+ - **Webhook Handling Framework**: The pattern for handling different types of webhooks can be adapted for other integrations.
33
+ - **Logging and Profiling**: The use of `winston` for logging can be reused in other serverless applications for better monitoring.
34
+ - **Data Transformation Utilities**: Functions for sanitizing and transforming data for BigQuery can be reused in other data export scenarios.
24
35
 
25
- This summary provides an overview of the app's purpose, key patterns, integrations, and notable code practices, offering a reference for AI assistants to understand and interact with the app's implementation.
36
+ This app is a robust solution for integrating Seeka with Google BigQuery, providing a scalable and secure method for exporting data for analytics purposes.
37
+ ```
@@ -1,35 +1,28 @@
1
1
  # AI Summary for Klaviyo Events App
2
2
 
3
- ## Overview
4
-
5
- The **Klaviyo Events App** is designed to integrate with Klaviyo for pushing activity events to facilitate email marketing automation. It leverages Azure Functions to handle webhooks from Seeka, processing various types of events related to app installation and user activities, and subsequently interacts with Klaviyo for marketing automation.
3
+ ## Purpose and Functionality
4
+ The **Klaviyo Events App** is designed to integrate with Klaviyo for pushing activity events, facilitating email marketing automation. It handles webhook events from Seeka, processes them, and interacts with Klaviyo to automate marketing activities based on user interactions.
6
5
 
7
6
  ## Key Implementation Patterns
8
-
9
- 1. **Azure Functions**: The app utilizes Azure Functions to handle HTTP requests, specifically webhooks from Seeka. It defines a function `seekaAppWebhook` to process incoming webhook requests.
10
-
11
- 2. **Webhook Handling**: The app processes different types of webhook payloads, including installation, uninstallation, and activity events. It validates webhook signatures to ensure authenticity.
12
-
13
- 3. **Asynchronous Job Processing**: The app triggers background jobs for processing certain activities using a queue system, ensuring that activity handling does not block the main execution flow.
14
-
15
- 4. **Logging**: The app employs the `winston` library for logging, providing detailed logs for debugging and monitoring purposes.
7
+ - **Azure Functions**: The app uses Azure Functions to handle HTTP requests, specifically webhooks from Seeka.
8
+ - **Webhook Handling**: It processes different types of webhook events such as installation, uninstallation, and activity acceptance.
9
+ - **Logging**: Utilizes `winston` for structured logging, including profiling and verbosity levels for debugging and monitoring.
10
+ - **Background Jobs**: Implements a background job system to handle asynchronous processing of activities using a queue system.
16
11
 
17
12
  ## External APIs/Services Integrated
18
-
19
- - **Klaviyo**: The app integrates with Klaviyo to push activity events for email marketing automation.
20
- - **Azure Functions**: Used for serverless execution of webhook handling logic.
21
- - **Seeka SDK**: Utilized for handling Seeka-specific webhook payloads and operations.
13
+ - **Klaviyo**: Although not explicitly shown in the code snippet, the app's primary purpose is to push events to Klaviyo for marketing automation.
14
+ - **Azure Functions**: Used for deploying serverless functions to handle HTTP requests.
15
+ - **Seeka SDK**: The app uses `@seeka-labs/sdk-apps-server` for handling Seeka-specific webhook payloads and operations.
22
16
 
23
17
  ## Important Data Transformations
24
-
25
- - **Webhook Payload Parsing**: The app parses JSON payloads from incoming HTTP requests to extract relevant event data.
26
- - **Installation State Management**: It manages the state of app installations, updating or deleting records based on webhook events.
27
- - **Activity Filtering**: Filters activities to determine which should be processed further, specifically excluding certain activity types like `ViewPage`.
18
+ - **Webhook Payload Parsing**: The app parses JSON payloads from HTTP requests to handle different webhook types.
19
+ - **Installation State Management**: It manages the state of app installations, including creating, updating, and deleting installation records.
20
+ - **Activity Processing**: Filters and processes activity events, excluding certain types (e.g., `ViewPage`), and queues them for background processing.
28
21
 
29
22
  ## Notable Code Patterns
23
+ - **Signature Validation**: Implements a security pattern by validating webhook signatures to ensure authenticity.
24
+ - **Error Handling**: Uses try-catch blocks to handle exceptions and return appropriate HTTP status codes.
25
+ - **Modular Service Initialization**: The `startServices` function initializes necessary services before processing webhooks, promoting modularity and separation of concerns.
26
+ - **Conditional Logic for Webhook Types**: Uses a switch-case structure to handle different webhook types, making the code extensible for future webhook types.
30
27
 
31
- - **Signature Validation**: Implements a robust mechanism to validate webhook signatures, ensuring that only legitimate requests are processed.
32
- - **Background Job Triggering**: Uses a pattern to offload intensive tasks to background processing, improving response times and reliability.
33
- - **Modular Logging**: Utilizes a structured logging approach with `winston`, allowing for detailed and context-aware logging.
34
-
35
- This summary provides a high-level understanding of the Klaviyo Events App's architecture and implementation, highlighting its integration with external services, key patterns, and data handling strategies.
28
+ This summary provides an overview of the app's architecture, its integration with external services, and the patterns used in its implementation, which can be referenced for understanding or extending the app's functionality.
@@ -1,27 +1,41 @@
1
- ```markdown
2
1
  # AI Summary for Navitas App
3
2
 
4
3
  ## Purpose and Functionality
5
- The Navitas app integrates with the Navitas education group to track student inquiries and conversions. It acts as a bridge between Navitas and CRM systems like Salesforce, facilitating lead tracking and management. The app is designed to handle webhooks for various events such as app installation, settings updates, and uninstallation, ensuring seamless integration and data flow between systems.
4
+
5
+ The Navitas app is designed to integrate with the Navitas education group for tracking student inquiries and conversions. It functions as a CRM tool and browser plugin, facilitating the management of educational leads and conversion tracking. The app is structured to handle webhooks from Seeka, process them, and perform actions like installation, settings updates, and uninstallation of the app.
6
6
 
7
7
  ## Key Implementation Patterns
8
- - **Monorepo Structure**: The app uses a monorepo setup managed by Yarn workspaces, organizing code into `app` and `lib` directories for modular development.
9
- - **Azure Functions**: The server component is implemented as an Azure Function, providing a scalable and event-driven architecture for handling HTTP requests.
10
- - **Webhook Handling**: The app processes incoming webhooks from Seeka, validating signatures and managing installations based on event types.
11
- - **Logging**: Utilizes Winston for structured logging, enhancing traceability and debugging capabilities.
8
+
9
+ 1. **Monorepo Structure**: The app uses a monorepo setup with Yarn workspaces, organizing the code into `app` and `lib` directories for modular development.
10
+
11
+ 2. **Webhook Handling**: The app is built on Azure Functions, specifically handling HTTP POST requests for various webhook events such as app installation, settings updates, and uninstallation.
12
+
13
+ 3. **Logging**: Utilizes the `winston` library for structured logging, providing detailed logs for webhook processing and error handling.
14
+
15
+ 4. **Continuous Integration**: The app includes scripts for building, cleaning, linting, and deploying, ensuring a streamlined development workflow.
12
16
 
13
17
  ## External APIs/Services Integrated
14
- - **Salesforce**: The app integrates with Salesforce via outbound messages, using specific endpoints for different environments (ACAP and SAE).
15
- - **Google BigQuery**: Although not directly modified by the app, it interfaces with BigQuery for data management, with specific tables and functions maintained by Seeka's continuous delivery pipelines.
18
+
19
+ 1. **Azure Functions**: The app is deployed as an Azure Function, handling HTTP requests for webhook events.
20
+
21
+ 2. **Salesforce**: The app integrates with Salesforce, receiving outbound messages via POST requests with XML content type.
22
+
23
+ 3. **Google BigQuery**: The app interacts with BigQuery for data storage and retrieval, with specific functions and tables maintained by Seeka's continuous delivery pipelines.
16
24
 
17
25
  ## Important Data Transformations
18
- - **Webhook Payload Processing**: The app parses and validates JSON payloads from webhooks, transforming them into actionable data for installation management.
19
- - **Installation State Management**: It updates or creates installation records based on webhook events, maintaining state consistency across different app installations.
26
+
27
+ - **Webhook Payload Processing**: The app processes incoming webhook payloads, validating signatures, and parsing JSON data to determine the type of event and execute corresponding actions.
28
+
29
+ - **Installation State Management**: The app manages installation states, creating or updating records in response to installation and settings update events.
20
30
 
21
31
  ## Notable Code Patterns
22
- - **Signature Validation**: Implements a robust mechanism to validate webhook signatures, ensuring secure communication between systems.
23
- - **Service Initialization**: Uses a `startServices` function to initialize necessary services before processing webhook events.
24
- - **Error Handling**: Comprehensive error handling and logging are in place to manage exceptions and provide detailed error information for troubleshooting.
25
32
 
26
- This summary provides an overview of the Navitas app's architecture and functionality, highlighting its integration with external systems and the implementation patterns that ensure robust and scalable operations.
27
- ```
33
+ 1. **Signature Validation**: The app includes a robust mechanism for validating webhook signatures to ensure the authenticity of incoming requests.
34
+
35
+ 2. **Error Handling**: Comprehensive error handling is implemented, with detailed logging of exceptions and graceful degradation in case of failures.
36
+
37
+ 3. **Environment Configuration**: The app uses environment variables for configuration, such as `SEEKA_APP_SECRET` for signature validation, promoting secure and flexible deployments.
38
+
39
+ 4. **Modular Service Initialization**: The `startServices` function initializes necessary services, ensuring that dependencies are ready before processing webhooks.
40
+
41
+ This summary provides an overview of the Navitas app's architecture and functionality, highlighting its integration with external services and key implementation patterns.
@@ -2,33 +2,37 @@
2
2
 
3
3
  ## Overview
4
4
 
5
- The **TrustArc** app is designed to integrate consent management functionalities into applications, ensuring privacy compliance and consent tracking. It is particularly focused on adhering to regulations such as GDPR. The app is structured as a browser plugin and a server component, leveraging Azure Functions to handle server-side operations.
5
+ **App Name**: TrustArc
6
+ **Template Version**: V2
7
+ **Template**: azurefunc
8
+ **Components**: browser, server
9
+ **Description**: The TrustArc app is designed to integrate consent management functionalities for privacy compliance and consent tracking, particularly in alignment with GDPR requirements. It acts as a browser plugin and server-side application to manage user consent efficiently.
6
10
 
7
11
  ## Purpose and Functionality
8
12
 
9
- - **Consent Management**: The app provides tools to manage user consent, crucial for compliance with privacy laws like GDPR.
10
- - **Privacy Compliance**: It helps applications adhere to privacy regulations by integrating TrustArc's consent management solutions.
11
- - **Tracking**: The app tracks user consent status and updates, ensuring that applications remain compliant over time.
13
+ The primary purpose of the TrustArc app is to facilitate privacy compliance by managing user consent through a browser plugin and server-side integration. This is crucial for organizations that need to adhere to data protection regulations such as GDPR. The app provides mechanisms for tracking and managing user consent, ensuring that user data is handled according to legal requirements.
12
14
 
13
15
  ## Key Implementation Patterns
14
16
 
15
- - **Monorepo Structure**: The app uses a monorepo setup with Yarn workspaces, managing both the browser and server components under a single repository.
16
- - **Azure Functions**: The server-side logic is implemented as an Azure Function, which allows for scalable and event-driven execution.
17
- - **Development Scripts**: The app uses a series of Yarn scripts to automate tasks such as cleaning, building, and deploying the application.
17
+ - **Monorepo Structure**: The app uses a monorepo setup with Yarn workspaces to manage multiple packages (`browser` and `server`) within a single repository.
18
+ - **Azure Functions**: The server-side component is implemented as an Azure Function, which allows for scalable, serverless execution of backend logic.
19
+ - **Build and Deployment Automation**: The app leverages Yarn scripts to automate tasks such as cleaning, building, and deploying the application. This includes specific scripts for development and production environments.
18
20
 
19
21
  ## External APIs/Services Integrated
20
22
 
21
- - **Azure Functions**: Utilized for server-side processing, providing a serverless architecture that scales with demand.
22
- - **TrustArc API**: Although not explicitly mentioned in the code snippet, the app likely integrates with TrustArc's API for consent management functionalities.
23
+ - **Azure Functions Core Tools**: This is used for local development and deployment of Azure Functions, providing a seamless development experience for serverless applications.
23
24
 
24
25
  ## Important Data Transformations
25
26
 
26
- - **Consent Data Handling**: The app likely transforms and manages consent data to ensure it is stored and retrieved in compliance with privacy regulations. This includes tracking consent status and changes over time.
27
+ The app likely involves data transformations related to user consent data. While specific transformations are not detailed in the provided code, typical transformations might include:
28
+
29
+ - **Normalization of Consent Data**: Ensuring that consent information is stored in a consistent format for easy retrieval and processing.
30
+ - **Aggregation of Consent Logs**: Compiling consent actions from multiple users to generate compliance reports.
27
31
 
28
32
  ## Notable Code Patterns
29
33
 
30
- - **Workspace Automation**: The use of Yarn workspaces and scripts for automating tasks across multiple components is a reusable pattern for managing complex applications.
31
- - **Serverless Architecture**: Implementing server-side logic as Azure Functions is a pattern that can be reused for other applications requiring scalable, event-driven processing.
32
- - **Dependency Management**: The app includes a script for updating dependencies across all workspaces, ensuring that the application remains up-to-date with the latest library versions.
34
+ - **Workspace Management with Yarn**: The use of Yarn workspaces allows for efficient management of dependencies and scripts across multiple packages within the app. This pattern is beneficial for maintaining consistency and reducing redundancy in multi-package projects.
35
+ - **Environment-Specific Builds**: The app differentiates between development and production builds, which is a best practice for optimizing performance and debugging capabilities in different environments.
36
+ - **Automated Dependency Updates**: The use of `npm-check-updates` in the README suggests a proactive approach to keeping dependencies up-to-date, which is crucial for security and compatibility.
33
37
 
34
- This summary provides an overview of the TrustArc app's purpose, implementation, and key features, aiding AI systems in understanding and referencing its design and functionality.
38
+ This summary provides a comprehensive understanding of the TrustArc app's implementation, focusing on its architecture, key patterns, and integration points.
@@ -1,32 +1,56 @@
1
- # AI Summary for Seeka Typeform App
1
+ ```markdown
2
+ # AI Summary: Typeform Integration App
2
3
 
3
4
  ## Overview
4
- The Seeka Typeform app is designed to integrate with Typeform to track form submissions and survey responses. It leverages webhooks to capture and process data from Typeform, facilitating lead capture and survey analytics.
5
-
6
- ## Purpose and Functionality
7
- - **Integration with Typeform**: The app connects with Typeform to monitor form submissions and survey responses.
8
- - **Webhook Handling**: It processes various webhook events such as app installation, uninstallation, and activity acceptance.
9
- - **Lead Capture**: Captures data from Typeform submissions for further processing and analysis.
5
+ The Typeform integration app is designed to track form submissions and survey responses using Typeform. It leverages webhooks for real-time data capture and integrates with Seeka's platform to manage and respond to form-related events. This app is structured to handle various webhook events, ensuring seamless integration with Typeform for lead capture and survey management.
10
6
 
11
7
  ## Key Implementation Patterns
12
- - **Monorepo Structure**: Utilizes Yarn workspaces to manage multiple components (`browser`, `ui`, `server`) within a single repository.
13
- - **Azure Functions**: The server-side logic is implemented using Azure Functions, allowing for scalable and event-driven execution.
14
- - **Webhook Validation**: Implements security by validating webhook signatures to ensure authenticity.
15
- - **Service Initialization**: Services are started asynchronously to handle incoming webhook requests efficiently.
8
+
9
+ ### Modular Workspace Structure
10
+ - The app is organized using Yarn workspaces, which allows for modular development across different components: `browser`, `ui`, and `server`.
11
+ - Each component has its own build and development scripts, facilitating isolated development and testing.
12
+
13
+ ### Webhook Handling
14
+ - The server component handles incoming webhooks from Seeka using Azure Functions. The main function `seekaAppWebhook` processes different types of webhook events.
15
+ - Webhook signature validation is implemented to ensure security and authenticity of incoming requests.
16
+
17
+ ### Logging and Monitoring
18
+ - Winston is used for logging, providing detailed logs for webhook events and application state changes.
19
+ - Profiling and verbose logging are utilized for performance monitoring and debugging.
16
20
 
17
21
  ## External APIs/Services Integrated
18
- - **Typeform**: The app integrates with Typeform to receive data from form submissions.
19
- - **Azure Functions**: Used for deploying server-side logic and handling HTTP requests.
20
- - **Seeka SDK**: Utilizes Seeka's SDK for handling webhook payloads and managing app installations.
22
+
23
+ ### Typeform
24
+ - The app integrates with Typeform to capture form submissions and survey responses through webhooks.
25
+
26
+ ### Seeka Platform
27
+ - Utilizes Seeka's SDK for handling webhook payloads and managing app installation states.
28
+
29
+ ### Azure Functions
30
+ - The server component is deployed as an Azure Function, providing a scalable and reliable execution environment for handling HTTP requests.
21
31
 
22
32
  ## Important Data Transformations
23
- - **Webhook Payload Parsing**: Converts incoming webhook payloads into structured data for processing.
24
- - **Installation State Management**: Manages the state of app installations, ensuring that only known installations are processed.
33
+
34
+ ### Webhook Payload Processing
35
+ - The app processes various webhook payloads, transforming them into actionable events within the Seeka platform.
36
+ - Payloads are parsed and validated, with specific actions triggered based on the webhook type (e.g., `AppInstalled`, `AppUninstalled`).
37
+
38
+ ### Installation State Management
39
+ - The app manages installation states using functions like `createOrUpdateInstallation` and `deleteInstallation`, ensuring the app's state is consistent with Seeka's platform.
25
40
 
26
41
  ## Notable Code Patterns
27
- - **Logging with Winston**: Uses the Winston library for structured logging, providing detailed logs for debugging and monitoring.
28
- - **Environment-Based Configuration**: Uses environment variables for configuration, allowing for flexible deployment across different environments.
29
- - **Error Handling**: Implements robust error handling to manage invalid webhook signatures and unknown installations gracefully.
30
- - **Version Management**: Provides scripts for version bumping and deployment, ensuring consistent versioning across all components.
31
42
 
32
- This summary provides a high-level understanding of the Seeka Typeform app's architecture and functionality, facilitating AI assistants in referencing and interacting with its implementation.
43
+ ### Secure Webhook Validation
44
+ - The function `throwOnInvalidWebhookSignature` is used to validate webhook signatures, ensuring that only legitimate requests are processed.
45
+
46
+ ### Service Initialization
47
+ - The `startServices` function initializes necessary services before processing webhook events, ensuring that all dependencies are ready and available.
48
+
49
+ ### Dynamic Logger Creation
50
+ - The use of `childLogger` allows for dynamic creation of loggers with context-specific information, enhancing the clarity and usefulness of logs.
51
+
52
+ ### Version Management
53
+ - The app includes scripts for version bumping (`bump:patch`, `bump:minor`, `bump:major`) and applies these changes across all workspaces, maintaining consistency in versioning.
54
+
55
+ This summary provides a comprehensive understanding of the Typeform integration app's architecture, key patterns, and integrations, serving as a reference for AI assistants to understand and interact with the app effectively.
56
+ ```
@@ -1,28 +1,43 @@
1
- ```markdown
2
1
  # AI Summary for Seeka Webhook App
3
2
 
3
+ ## Overview
4
+
5
+ The Seeka Webhook app is designed to send Seeka activity data to custom webhook endpoints. It acts as an integration layer, allowing external systems to receive updates about Seeka app activities. The app is built using the Azure Functions template and consists of both server and UI components.
6
+
4
7
  ## Purpose and Functionality
5
- The Seeka Webhook app is designed to send Seeka activity data to custom webhook endpoints. It facilitates integration with external systems by exporting data through webhooks, allowing for real-time data synchronization and event-driven architectures.
8
+
9
+ - **Webhook Handling**: The app processes incoming webhook requests from Seeka, validates them, and performs actions based on the type of webhook event.
10
+ - **Integration**: It integrates with custom endpoints to export data, allowing external systems to react to Seeka app events.
11
+ - **Data Export**: Facilitates the export of activity data to external systems through webhooks.
6
12
 
7
13
  ## Key Implementation Patterns
8
- - **Azure Functions**: The app is built using Azure Functions, providing a scalable and serverless environment for handling HTTP requests.
9
- - **Modular Code Structure**: The app is organized into `ui` and `server` components, with a clear separation of concerns.
10
- - **Workspace Management**: Utilizes Yarn workspaces for managing dependencies and scripts across multiple packages within the project.
14
+
15
+ - **Azure Functions**: Utilizes Azure Functions to handle HTTP requests, providing a scalable and serverless architecture.
16
+ - **Workspace Management**: Uses Yarn workspaces to manage multiple components (UI and server) within the app.
17
+ - **Logging**: Implements structured logging using Winston to track and debug webhook processing.
18
+ - **Environment Configuration**: Uses environment variables for secure management of sensitive data like webhook secrets.
11
19
 
12
20
  ## External APIs/Services Integrated
13
- - **Azure Functions**: The app leverages Azure's serverless computing service to handle HTTP requests and process webhook events.
14
- - **Seeka SDK**: Integrates with the `@seeka-labs/sdk-apps-server` to handle specific webhook payloads and validate signatures.
21
+
22
+ - **Azure Functions**: The app is deployed as an Azure Function, leveraging its capabilities for handling HTTP requests and scaling.
23
+ - **Seeka SDK**: Integrates with the Seeka SDK to handle specific webhook payloads and validate webhook signatures.
15
24
 
16
25
  ## Important Data Transformations
17
- - **Webhook Payload Processing**: The app processes incoming webhook payloads, validating signatures and parsing JSON data to ensure integrity and security.
18
- - **Installation Management**: Handles the creation, update, and deletion of installation states based on webhook events like `AppInstalled`, `AppInstallSettingsUpdated`, and `AppUninstalled`.
26
+
27
+ - **Payload Parsing**: Converts incoming webhook request bodies from JSON strings to structured payload objects for processing.
28
+ - **Installation State Management**: Transforms webhook payload data into installation state objects, updating or creating records in the app's state management system.
19
29
 
20
30
  ## Notable Code Patterns
21
- - **Logging with Winston**: Implements structured logging using the Winston library, providing detailed logs for debugging and monitoring.
22
- - **Error Handling**: Includes robust error handling mechanisms to manage invalid webhook signatures and unknown installation IDs.
23
- - **Environment Configuration**: Utilizes environment variables for sensitive data like `SEEKA_APP_SECRET`, ensuring secure configuration management.
24
- - **Version Management**: Automates version bumping and git tagging through custom scripts, streamlining the release process.
25
- - **Service Initialization**: Uses a `startServices` function to initialize necessary services before processing webhook events.
26
-
27
- This app serves as a template for building scalable and maintainable webhook integrations, leveraging serverless architecture and modern development practices.
28
- ```
31
+
32
+ - **Webhook Signature Validation**: Implements a robust pattern for validating webhook signatures to ensure the authenticity of incoming requests.
33
+ - **Conditional Processing**: Uses a switch-case structure to handle different types of webhook events, allowing for extensible and organized event handling.
34
+ - **Error Handling**: Includes comprehensive error handling and logging to capture and report issues during webhook processing.
35
+ - **Service Initialization**: Uses a service start pattern to initialize necessary services before processing webhook events.
36
+
37
+ ## Reusable Code Patterns
38
+
39
+ - **Logger Initialization**: The pattern for initializing and using a logger can be reused in other applications requiring structured logging.
40
+ - **Webhook Validation**: The signature validation pattern is a reusable security measure for any application dealing with webhooks.
41
+ - **State Management**: The approach to managing installation states can be adapted for other applications requiring similar state tracking mechanisms.
42
+
43
+ This summary provides a high-level understanding of the Seeka Webhook app's architecture, functionality, and implementation patterns, serving as a reference for AI assistants.