@seeka-labs/cli-apps 3.8.2 → 3.8.6

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 (34) hide show
  1. package/dist/ai-context/internal/examples/_index.md +1 -1
  2. package/dist/ai-context/internal/examples/v1/activecampaign/_ai-summary.md +25 -32
  3. package/dist/ai-context/internal/examples/v1/complianz/_ai-summary.md +17 -23
  4. package/dist/ai-context/internal/examples/v1/ivvy/_ai-summary.md +20 -19
  5. package/dist/ai-context/internal/examples/v1/me-and-u-connect/_ai-summary.md +18 -16
  6. package/dist/ai-context/internal/examples/v1/me-and-u-manage/_ai-summary.md +22 -34
  7. package/dist/ai-context/internal/examples/v1/nowbookit/_ai-summary.md +26 -26
  8. package/dist/ai-context/internal/examples/v1/sevenrooms/_ai-summary.md +22 -21
  9. package/dist/ai-context/internal/examples/v1/tradable-bits/_ai-summary.md +20 -22
  10. package/dist/ai-context/internal/examples/v1/transcend/_ai-summary.md +43 -23
  11. package/dist/ai-context/internal/examples/v2/calendly/_ai-summary.md +19 -16
  12. package/dist/ai-context/internal/examples/v2/clarity/_ai-summary.md +14 -21
  13. package/dist/ai-context/internal/examples/v2/google-bigquery/_ai-summary.md +15 -14
  14. package/dist/ai-context/internal/examples/v2/klaviyo-events/_ai-summary.md +24 -15
  15. package/dist/ai-context/internal/examples/v2/navitas/_ai-summary.md +16 -28
  16. package/dist/ai-context/internal/examples/v2/trustarc/_ai-summary.md +14 -16
  17. package/dist/ai-context/internal/examples/v2/typeform/_ai-summary.md +20 -19
  18. package/dist/ai-context/internal/examples/v2/webhook/_ai-summary.md +16 -14
  19. package/dist/ai-context/internal/examples/v2/yeastar/_ai-summary.md +19 -15
  20. package/dist/ai-context/internal/examples/v3/google-ads/_ai-summary.md +19 -17
  21. package/dist/index.cjs +2465 -281
  22. package/dist/index.cjs.map +4 -4
  23. package/dist/init-template/README.azurefunc.md +1 -1
  24. package/dist/init-template/app/browser/package.json +1 -1
  25. package/dist/init-template/app/lib/package.json +1 -1
  26. package/dist/init-template/app/server-azurefunc/package.json +1 -1
  27. package/dist/init-template/app/ui/package.json +1 -1
  28. package/package.json +5 -2
  29. package/dist/ai-context/internal/architecture/v1-structure.md +0 -192
  30. package/dist/ai-context/internal/architecture/v2-structure.md +0 -261
  31. package/dist/ai-context/internal/architecture/v3-structure.md +0 -386
  32. package/dist/ai-context/internal/examples/v1/_index.md +0 -53
  33. package/dist/ai-context/internal/examples/v2/_index.md +0 -66
  34. package/dist/ai-context/internal/examples/v3/_index.md +0 -105
@@ -1,36 +1,56 @@
1
1
  # AI Summary for Seeka App: Transcend
2
2
 
3
- ## Purpose and Functionality
4
- The Transcend app integrates with the Transcend data privacy platform to manage consent and data rights, ensuring compliance with privacy regulations. It facilitates the handling of webhooks from Seeka, processes data rights requests, and manages installations and settings updates.
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
5
11
 
6
12
  ## Key Implementation Patterns
7
- - **Azure Functions**: The app is built using Azure Functions, allowing it to handle HTTP requests, manage queues, and perform scheduled tasks.
8
- - **Webhook Handling**: The app processes various webhook events from Seeka, such as app installations, settings updates, and activity acceptance.
9
- - **State Management**: Redis is used for storing app installation states, with the option to swap for another state provider.
10
- - **Centralized Logging**: Utilizes Winston for logging, with optional integration with Seq for structured log management.
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.
11
23
 
12
24
  ## External APIs/Services Integrated
13
- - **Transcend**: Integrates with Transcend for consent and data rights management.
14
- - **Azure Storage**: Uses Azure Storage Queues for managing asynchronous operations.
15
- - **Redis**: Employed for state management, with optional integration with Upstash.
16
- - **Ngrok**: Used for exposing local development environments to the internet for testing.
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.
17
31
 
18
32
  ## Important Data Transformations
19
- - **Webhook Payload Processing**: Parses and validates webhook payloads, ensuring the integrity and authenticity of incoming data.
20
- - **Installation State Management**: Handles the creation, update, and deletion of app installation states based on webhook events.
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.
21
37
 
22
38
  ## Notable Code Patterns
23
- - **Webhook Signature Validation**: Ensures security by validating webhook signatures before processing.
24
- - **Queue Management**: Demonstrates how to offload long-running operations to Azure Storage Queues to respect Azure Function execution limits.
25
- - **Modular Service Initialization**: Uses a `startServices` function to initialize necessary services, promoting modularity and separation of concerns.
26
- - **Browser SDK Plugin Handling**: Integrates browser-specific plugins conditionally, showcasing a pattern for component-based architecture.
27
39
 
28
- ## Development and Deployment
29
- - **Local Development**: Supports local development with Docker for Azure Storage emulation and Ngrok for exposing local servers.
30
- - **Deployment**: Provides scripts for deploying the app to Azure, ensuring a streamlined deployment process.
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
31
51
 
32
- ## Debugging and Testing
33
- - **VSCode Debugging**: Configured for debugging with VSCode, supporting breakpoints and step-through debugging.
34
- - **Testing**: Uses Jest for testing, ensuring code reliability and robustness.
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.
35
55
 
36
- This summary provides an overview of the Transcend app's architecture, integration points, and implementation patterns, offering a comprehensive understanding for AI assistants and developers.
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.
@@ -2,34 +2,37 @@
2
2
 
3
3
  ## Overview
4
4
 
5
- The Calendly integration app is designed to facilitate the tracking of meeting bookings and scheduling events from Calendly. It integrates with Calendly to manage scheduling and is built using Azure Functions as its serverless backend. The app is structured with components for the browser, UI, and server, and it leverages webhooks to interact with the Calendly API and other services.
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.
6
6
 
7
7
  ## Key Implementation Patterns
8
8
 
9
- - **Monorepo Structure**: The app uses a monorepo setup managed by Yarn workspaces, allowing for organized development and deployment of multiple components (`lib`, `browser`, `ui`, `server`).
10
- - **Azure Functions**: The server-side logic is implemented using Azure Functions, providing a scalable and efficient way to handle HTTP requests and webhooks.
11
- - **Webhook Handling**: The app processes various webhook events from Seeka and Calendly, including installation, uninstallation, and settings updates.
12
- - **Logging**: Utilizes the `winston` library for structured logging, which is crucial for debugging and monitoring webhook interactions.
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.
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.
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.
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.
13
16
 
14
17
  ## External APIs/Services Integrated
15
18
 
16
- - **Calendly API**: The app integrates with Calendly to manage scheduling and event tracking.
17
- - **Seeka SDK**: Utilizes the Seeka SDK for handling webhook payloads and managing app installations.
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.
18
22
 
19
23
  ## Important Data Transformations
20
24
 
21
- - **Webhook Payload Parsing**: The app parses JSON payloads from incoming webhooks to extract necessary information for processing events.
22
- - **Installation State Management**: Transforms webhook payloads into installation states, updating or deleting installations as necessary.
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.
23
27
 
24
28
  ## Notable Code Patterns
25
29
 
26
- - **Webhook Signature Validation**: Implements a security pattern to validate webhook signatures, ensuring that requests are authentic.
27
- - **Conditional Logic for Webhook Types**: Uses a switch-case structure to handle different types of webhook events, providing a clear and maintainable approach to event processing.
28
- - **Error Handling**: Comprehensive error handling is implemented to catch and log exceptions during webhook processing, enhancing reliability.
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.
31
+
32
+ 2. **Service Initialization**: The `startServices` function is used to initialize necessary services before processing webhooks, ensuring that all dependencies are ready for use.
29
33
 
30
- ## Development and Deployment
34
+ 3. **Error Handling and Logging**: Comprehensive error handling is implemented with detailed logging using Winston, capturing both successful and failed webhook processing attempts.
31
35
 
32
- - **Scripts for Development**: The `package.json` includes scripts for building, cleaning, linting, and deploying the app, as well as for version management using semantic versioning.
33
- - **Local Development Setup**: Instructions for setting up a local development environment are provided, including commands for running the server, UI, and tunneling services.
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.
34
37
 
35
- This summary provides an overview of the app's architecture, key features, and implementation details, which can be useful for AI systems to understand and reference the app's functionality and design patterns.
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.
@@ -1,32 +1,25 @@
1
- # AI Summary: Clarity App
2
-
3
- ## Overview
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 within the Seeka app ecosystem, facilitating analytics through session recording and heatmaps.
1
+ # AI Summary for Clarity App
5
2
 
6
3
  ## Purpose and Functionality
7
- - **Session Recording**: Captures user interactions within the browser for analysis.
8
- - **Heatmap Analytics**: Provides visual representations of user engagement on web pages.
9
- - **Webhook Handling**: Manages installation, update, and uninstallation events via webhooks.
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.
10
5
 
11
6
  ## Key Implementation Patterns
12
- - **Monorepo Structure**: Utilizes Yarn workspaces to manage both browser and server components.
13
- - **Azure Functions**: Implements serverless functions for handling HTTP requests and webhooks.
14
- - **Webhook Validation**: Ensures secure communication by validating webhook signatures.
15
- - **Logging**: Uses Winston for structured logging and profiling of webhook events.
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.
16
10
 
17
11
  ## External APIs/Services Integrated
18
- - **Microsoft Clarity**: For session recording and heatmap analytics.
19
- - **Azure Functions**: Provides the serverless environment for executing webhook handlers.
20
- - **Seeka SDK**: Utilizes Seeka's server SDK for handling app-specific webhook payloads.
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.
21
15
 
22
16
  ## Important Data Transformations
23
- - **Webhook Payload Processing**: Parses and processes JSON payloads from incoming webhooks to trigger appropriate actions.
24
- - **Installation State Management**: Manages installation states through create, update, and delete operations.
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.
25
19
 
26
20
  ## Notable Code Patterns
27
- - **Webhook Handler**: A reusable pattern for handling different types of webhook events (`AppInstalled`, `AppInstallSettingsUpdated`, `AppUninstalled`, `BrowserSdkPlugin`).
28
- - **Signature Validation**: A robust mechanism for ensuring the authenticity of incoming webhook requests.
29
- - **Service Initialization**: A pattern for starting necessary services before processing webhook events.
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.
30
24
 
31
- ## Conclusion
32
- The Clarity app effectively integrates Microsoft Clarity's session recording and heatmap analytics into the Seeka ecosystem, leveraging Azure Functions for serverless execution and employing secure, structured webhook handling. Its implementation patterns, such as monorepo management and robust logging, offer reusable solutions for similar analytics integrations.
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.
@@ -1,24 +1,25 @@
1
- # AI Summary for Seeka App: Google BigQuery Integration
1
+ # AI Summary for Google BigQuery Seeka App
2
2
 
3
- ## Overview
4
- The `google-bigquery` app is designed to integrate Seeka activity data with Google BigQuery, enabling advanced analytics and reporting capabilities. It facilitates the export of Seeka activity data to BigQuery, allowing users to leverage BigQuery's powerful data processing and querying features.
3
+ ## 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.
5
5
 
6
6
  ## Key Implementation Patterns
7
- - **Azure Functions**: The app is structured as an Azure Function, providing a serverless environment to handle HTTP requests and process webhooks.
8
- - **Webhook Handling**: The app processes various types of Seeka webhooks, such as installation, uninstallation, and activity updates, to manage the integration with BigQuery.
9
- - **Service Initialization**: The app initializes necessary services upon receiving webhooks to ensure the environment is correctly set up for data processing.
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.
10
11
 
11
12
  ## External APIs/Services Integrated
12
- - **Google BigQuery**: The app directly interacts with Google BigQuery to check dataset and table existence and to push data for analytics.
13
- - **Azure Functions**: Utilized for hosting the serverless function that handles incoming HTTP requests and processes them accordingly.
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.
14
15
 
15
16
  ## Important Data Transformations
16
- - **Webhook Payload Processing**: The app parses and validates incoming webhook payloads, ensuring data integrity and security through signature validation.
17
- - **Data Sanitization**: Before pushing data to BigQuery, the app sanitizes records to match the expected schema, ensuring compatibility and preventing errors.
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.
18
19
 
19
20
  ## Notable Code Patterns
20
- - **Modular Service Design**: The app uses a modular design, separating concerns into different modules for logging, state management, and BigQuery interactions.
21
- - **Error Handling and Logging**: Utilizes the `winston` library for structured logging, providing detailed insights into the app's operations and facilitating debugging.
22
- - **Version Management**: The app leverages Yarn workspaces and scripts for version management, ensuring consistent updates across all components.
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.
23
24
 
24
- This summary provides a high-level understanding of the Seeka app's purpose, structure, and integration points, aiding AI systems in referencing and interacting with the app effectively.
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.
@@ -1,26 +1,35 @@
1
1
  # AI Summary for Klaviyo Events App
2
2
 
3
- ## Purpose and Functionality
4
- The **Klaviyo Events App** is designed to integrate with Klaviyo for pushing activity events to facilitate email marketing automation. It acts as a bridge between Seeka apps and Klaviyo, enabling the automation of marketing tasks based on user activities captured by Seeka.
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.
5
6
 
6
7
  ## Key Implementation Patterns
7
- - **Azure Functions**: The app is structured as an Azure Function, which provides a serverless environment to handle HTTP requests, specifically webhooks from Seeka.
8
- - **Webhook Handling**: The app listens for various types of webhook events from Seeka, such as app installations, updates, and activity acceptance, and processes them accordingly.
9
- - **Logging**: Uses the `winston` library for logging, providing detailed logs for each webhook event processed.
10
- - **Background Jobs**: Implements a queuing system to handle certain tasks asynchronously, such as processing accepted activities.
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.
11
16
 
12
17
  ## External APIs/Services Integrated
13
- - **Klaviyo**: The app integrates with Klaviyo to push events for email marketing automation.
14
- - **Azure Functions**: Utilizes Azure's serverless computing to handle HTTP requests and execute code in response to webhook events.
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.
15
22
 
16
23
  ## Important Data Transformations
17
- - **Webhook Payload Processing**: The app parses and validates incoming webhook payloads, ensuring they are correctly formatted and signed before processing.
18
- - **Installation State Management**: Manages the state of app installations, updating or deleting records based on webhook events.
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`.
19
28
 
20
29
  ## Notable Code Patterns
21
- - **Webhook Signature Validation**: Implements a security measure to validate the signature of incoming webhooks, ensuring that only legitimate requests are processed.
22
- - **Error Handling**: Utilizes try-catch blocks to handle errors gracefully, logging detailed error information and returning appropriate HTTP status codes.
23
- - **Modular Services**: Uses a modular approach to start services and manage installations, allowing for easy maintenance and scalability.
24
- - **Conditional Processing**: Differentiates between test and production webhook calls, ensuring that test data does not affect live operations.
25
30
 
26
- This summary provides an overview of the app's purpose, key patterns, integrations, and notable code practices, offering a comprehensive understanding for AI systems analyzing or interacting with the app.
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.
@@ -1,39 +1,27 @@
1
+ ```markdown
1
2
  # AI Summary for Navitas App
2
3
 
3
- ## Overview
4
-
5
- The Navitas app is designed to integrate with the Navitas education group, focusing on tracking student inquiries and conversions. It serves as a bridge between educational lead tracking and CRM systems, providing a seamless way to manage student data and interactions. The app includes both browser and server components, leveraging Azure Functions for server-side operations.
4
+ ## 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.
6
6
 
7
7
  ## Key Implementation Patterns
8
-
9
- 1. **Monorepo Structure**: The app uses a monorepo setup with Yarn workspaces, organizing code into separate packages for the browser and server components, as well as a shared library for Google BigQuery interactions.
10
-
11
- 2. **Webhook Handling**: The app extensively uses webhooks to manage events such as app installation, settings updates, and uninstallation. The webhook handler validates incoming requests, processes them based on their type, and logs the operations for auditing and debugging.
12
-
13
- 3. **Continuous Delivery**: The app employs continuous delivery pipelines to automatically maintain certain BigQuery functions, views, and tables, ensuring that the data infrastructure remains consistent and up-to-date.
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.
14
12
 
15
13
  ## External APIs/Services Integrated
16
-
17
- 1. **Azure Functions**: The server component is built using Azure Functions, providing a scalable and efficient way to handle HTTP requests and background tasks.
18
-
19
- 2. **Salesforce**: The app integrates with Salesforce via outbound messages, requiring specific headers and XML content types for communication.
20
-
21
- 3. **Google BigQuery**: The app interacts with BigQuery for data storage and analysis, with specific instructions to avoid modifying certain auto-managed resources.
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.
22
16
 
23
17
  ## Important Data Transformations
24
-
25
- - **Webhook Payload Processing**: Incoming webhook payloads are parsed and validated to ensure authenticity and integrity. The app processes different types of webhook calls, transforming them into actions such as creating or updating installations, or handling browser SDK plugin requests.
26
-
27
- - **Installation State Management**: The app manages installation states by creating or updating records with details such as granted permissions, installation IDs, and organizational information.
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.
28
20
 
29
21
  ## 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.
30
25
 
31
- 1. **Logger Utilization**: The app uses the `winston` library for logging, providing detailed insights into webhook handling and error management. This pattern can be reused for robust logging in other applications.
32
-
33
- 2. **Environment Variable Usage**: Secure handling of sensitive information, such as webhook secrets, is achieved through environment variables, ensuring that these details are not hardcoded into the source code.
34
-
35
- 3. **Error Handling and Profiling**: The app includes comprehensive error handling and profiling for webhook requests, allowing for efficient debugging and performance monitoring.
36
-
37
- 4. **Version Management**: The app includes scripts for managing version bumps (patch, minor, major) across all workspaces, ensuring consistent versioning and deployment practices.
38
-
39
- This summary provides a high-level understanding of the Navitas app's architecture, integrations, and key implementation details, which can be referenced for developing similar applications or enhancing existing ones.
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
+ ```
@@ -2,35 +2,33 @@
2
2
 
3
3
  ## Overview
4
4
 
5
- **App Name:** TrustArc
6
- **Template Version:** V2
7
- **Template:** azurefunc
8
- **Components:** browser, server
9
- **Description:** The TrustArc app is designed for integrating consent management functionalities to ensure privacy compliance and consent tracking. It is particularly relevant for organizations needing to adhere to privacy regulations such as GDPR. The app functions as a browser plugin and includes server-side components to manage and track user consent.
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.
10
6
 
11
7
  ## Purpose and Functionality
12
8
 
13
- The TrustArc app provides a comprehensive solution for managing user consent in compliance with privacy regulations. It integrates with TrustArc's consent management platform to track and manage user consent efficiently. The app is structured to operate both in the browser and on the server, ensuring a seamless experience across different platforms.
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.
14
12
 
15
13
  ## Key Implementation Patterns
16
14
 
17
- - **Monorepo Structure:** The app uses a monorepo structure managed by Yarn workspaces, allowing for organized development and deployment of both browser and server components.
18
- - **Azure Functions:** The server component is implemented as an Azure Function, leveraging serverless architecture for scalability and efficient resource management.
19
- - **Development Workflow:** The app includes scripts for cleaning, linting, building, and deploying, ensuring a streamlined development process. The use of `yarn workspaces` commands facilitates operations across all components.
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.
20
18
 
21
19
  ## External APIs/Services Integrated
22
20
 
23
- - **TrustArc API:** The app integrates with TrustArc's consent management platform to handle privacy compliance and consent tracking.
24
- - **Azure Functions Core Tools:** Utilized for local development and testing of Azure Functions, enabling developers to simulate the Azure environment on their local machines.
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.
25
23
 
26
24
  ## Important Data Transformations
27
25
 
28
- The app likely includes data transformations related to user consent data, ensuring that it is formatted and stored in compliance with privacy regulations. These transformations would typically involve normalizing consent data and securely transmitting it between the browser and server components.
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.
29
27
 
30
28
  ## Notable Code Patterns
31
29
 
32
- - **Workspace Commands:** The use of `yarn workspaces foreach` allows for executing commands across multiple packages, promoting efficient management of the monorepo.
33
- - **Environment-Specific Builds:** Separate build scripts for development and production environments ensure that the app is optimized for different stages of deployment.
34
- - **Serverless Deployment:** The deployment script for Azure Functions highlights a pattern for deploying serverless applications, which can be reused for similar projects requiring scalable backend solutions.
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.
35
33
 
36
- This summary provides an AI assistant with a comprehensive understanding of the TrustArc app's architecture, implementation patterns, and integration points, facilitating better support and enhancements.
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.
@@ -1,31 +1,32 @@
1
- ```markdown
2
1
  # AI Summary for Seeka Typeform App
3
2
 
3
+ ## 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
+
4
6
  ## Purpose and Functionality
5
- The Seeka Typeform app is designed to integrate with Typeform for tracking form submissions and survey responses. It leverages webhooks to capture lead data and survey responses, facilitating real-time data processing and integration with other systems.
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.
6
10
 
7
11
  ## Key Implementation Patterns
8
- - **Monorepo Structure**: The app uses a monorepo setup managed by Yarn workspaces, allowing for organized development across multiple components (`browser`, `ui`, `server`).
9
- - **Azure Functions**: The server-side logic is implemented using Azure Functions, providing a scalable and efficient way to handle HTTP requests and webhook events.
10
- - **Webhook Handling**: The app processes various webhook events such as `AppInstalled`, `AppUninstalled`, and `ActivityAccepted`, ensuring that the app's state is updated accordingly.
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.
11
16
 
12
17
  ## External APIs/Services Integrated
13
- - **Typeform**: The app integrates with Typeform to receive form submissions and survey responses.
14
- - **Seeka SDK**: Utilizes the `@seeka-labs/sdk-apps-server` for handling Seeka-specific webhook payloads and validation.
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.
15
21
 
16
22
  ## Important Data Transformations
17
- - **Webhook Payload Parsing**: Incoming webhook payloads are parsed and validated to ensure they are from trusted sources, using signature validation.
18
- - **Installation State Management**: The app maintains the state of installations, updating or deleting records based on webhook events.
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.
19
25
 
20
26
  ## Notable Code Patterns
21
- - **Logging**: Uses Winston for structured logging, providing detailed insights into webhook processing and app state changes.
22
- - **Service Initialization**: The `startServices` function is invoked to initialize necessary services before processing webhook events.
23
- - **Error Handling**: Implements robust error handling and logging to manage invalid webhook signatures and unknown installation IDs.
24
-
25
- ## Reusable Code Patterns
26
- - **Webhook Signature Validation**: The `throwOnInvalidWebhookSignature` function provides a reusable pattern for validating webhook signatures across different applications.
27
- - **State Management**: Functions like `createOrUpdateInstallation` and `deleteInstallation` offer a template for managing application state in response to external events.
28
- - **Logging**: The use of `childLogger` and `webhookLogger` demonstrates a reusable pattern for context-specific logging.
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.
29
31
 
30
- This summary provides an overview of the Seeka Typeform app's architecture and implementation, highlighting its integration with Typeform and the use of Azure Functions for server-side processing. The app's design patterns and external integrations make it a robust solution for managing form submissions and survey responses.
31
- ```
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.
@@ -1,26 +1,28 @@
1
+ ```markdown
1
2
  # AI Summary for Seeka Webhook App
2
3
 
3
4
  ## Purpose and Functionality
4
- The Seeka Webhook app is designed to send Seeka activity data to custom webhook endpoints. It facilitates the integration of Seeka's platform with external systems by exporting data through webhooks. The app supports various webhook call types, including app installation, settings updates, and uninstallation.
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.
5
6
 
6
7
  ## Key Implementation Patterns
7
- - **Azure Functions**: The app is implemented using Azure Functions, which handle HTTP requests for webhook events.
8
- - **Modular Architecture**: The app is divided into `ui` and `server` components, managed using Yarn workspaces for efficient dependency management and build processes.
9
- - **Logging**: Utilizes Winston for structured logging, providing detailed logs for debugging and monitoring webhook processing.
10
- - **Error Handling**: Implements robust error handling with try-catch blocks to manage exceptions during webhook processing.
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.
11
11
 
12
12
  ## External APIs/Services Integrated
13
- - **Azure Functions**: The app is hosted on Azure Functions, leveraging its serverless capabilities for scalability and ease of deployment.
14
- - **Seeka SDK**: Integrates with the `@seeka-labs/sdk-apps-server` to handle Seeka-specific webhook payloads and validate webhook signatures.
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.
15
15
 
16
16
  ## Important Data Transformations
17
- - **Webhook Payload Parsing**: The app parses incoming webhook payloads from JSON strings into structured objects for processing.
18
- - **Installation Management**: Transforms installation-related data into a consistent format for storage and retrieval, including handling installation state and settings updates.
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`.
19
19
 
20
20
  ## Notable Code Patterns
21
- - **Webhook Signature Validation**: Ensures security by validating webhook signatures using a secret key, preventing unauthorized requests.
22
- - **Service Initialization**: Uses a `startServices` function to initialize necessary services before processing webhooks, ensuring all dependencies are ready.
23
- - **Conditional Processing**: Handles different webhook call types using a switch-case pattern, allowing for specific logic execution based on the event type.
24
- - **Profile Logging**: Utilizes logger profiling to measure execution time for specific operations, aiding in performance monitoring and optimization.
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.
25
26
 
26
- This summary provides an overview of the Seeka Webhook app's architecture, key functionalities, and implementation details, facilitating AI understanding and reference for further development or integration tasks.
27
+ This app serves as a template for building scalable and maintainable webhook integrations, leveraging serverless architecture and modern development practices.
28
+ ```