@seeka-labs/cli-apps 3.8.1 → 3.8.5

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 (29) hide show
  1. package/README.md +13 -13
  2. package/dist/ai-context/internal/examples/_index.md +1 -1
  3. package/dist/ai-context/internal/examples/v1/activecampaign/_ai-summary.md +31 -28
  4. package/dist/ai-context/internal/examples/v1/complianz/_ai-summary.md +23 -21
  5. package/dist/ai-context/internal/examples/v1/ivvy/_ai-summary.md +19 -19
  6. package/dist/ai-context/internal/examples/v1/me-and-u-connect/_ai-summary.md +28 -17
  7. package/dist/ai-context/internal/examples/v1/me-and-u-manage/_ai-summary.md +21 -35
  8. package/dist/ai-context/internal/examples/v1/nowbookit/_ai-summary.md +29 -26
  9. package/dist/ai-context/internal/examples/v1/sevenrooms/_ai-summary.md +25 -24
  10. package/dist/ai-context/internal/examples/v1/tradable-bits/_ai-summary.md +19 -26
  11. package/dist/ai-context/internal/examples/v1/transcend/_ai-summary.md +32 -23
  12. package/dist/ai-context/internal/examples/v2/calendly/_ai-summary.md +25 -17
  13. package/dist/ai-context/internal/examples/v2/clarity/_ai-summary.md +13 -20
  14. package/dist/ai-context/internal/examples/v2/google-bigquery/_ai-summary.md +14 -14
  15. package/dist/ai-context/internal/examples/v2/klaviyo-events/_ai-summary.md +21 -14
  16. package/dist/ai-context/internal/examples/v2/navitas/_ai-summary.md +13 -23
  17. package/dist/ai-context/internal/examples/v2/trustarc/_ai-summary.md +14 -17
  18. package/dist/ai-context/internal/examples/v2/typeform/_ai-summary.md +19 -19
  19. package/dist/ai-context/internal/examples/v2/webhook/_ai-summary.md +18 -14
  20. package/dist/ai-context/internal/examples/v2/yeastar/_ai-summary.md +13 -12
  21. package/dist/ai-context/internal/examples/v3/google-ads/_ai-summary.md +16 -19
  22. package/dist/index.cjs +2464 -280
  23. package/dist/index.cjs.map +4 -4
  24. package/dist/init-template/README.azurefunc.md +1 -1
  25. package/dist/init-template/app/browser/package.json +1 -1
  26. package/dist/init-template/app/lib/package.json +1 -1
  27. package/dist/init-template/app/server-azurefunc/package.json +1 -1
  28. package/dist/init-template/app/ui/package.json +1 -1
  29. package/package.json +5 -2
package/README.md CHANGED
@@ -12,7 +12,7 @@ npm install -g @seeka-labs/cli-apps
12
12
  yarn global add @seeka-labs/cli-apps
13
13
 
14
14
  # Or run directly with npx
15
- npx @seeka-labs/cli-apps
15
+ npx @seeka-labs/cli-apps@latest
16
16
  ```
17
17
 
18
18
  ## Quick Start
@@ -20,7 +20,7 @@ npx @seeka-labs/cli-apps
20
20
  The fastest way to get started is to run the CLI without any arguments to enter **interactive mode**:
21
21
 
22
22
  ```bash
23
- npx @seeka-labs/cli-apps
23
+ npx @seeka-labs/cli-apps@latest
24
24
  ```
25
25
 
26
26
  This will guide you through the setup process with prompts for all required information.
@@ -35,13 +35,13 @@ Creates a new Seeka app with the specified template and configuration.
35
35
 
36
36
  ```bash
37
37
  # Interactive mode (recommended for first-time users)
38
- npx @seeka-labs/cli-apps
38
+ npx @seeka-labs/cli-apps@latest
39
39
 
40
40
  # Using command-line arguments
41
- npx @seeka-labs/cli-apps init <org> <name> [options]
41
+ npx @seeka-labs/cli-apps@latest init <org> <name> [options]
42
42
 
43
43
  # Using a configuration file
44
- npx @seeka-labs/cli-apps init <config-file.json>
44
+ npx @seeka-labs/cli-apps@latest init <config-file.json>
45
45
  ```
46
46
 
47
47
  #### Arguments
@@ -71,27 +71,27 @@ npx @seeka-labs/cli-apps init <config-file.json>
71
71
 
72
72
  ```bash
73
73
  # Create a new Azure Function app
74
- npx @seeka-labs/cli-apps init my-org my-app \
74
+ npx @seeka-labs/cli-apps@latest init my-org my-app \
75
75
  --template azure-function \
76
76
  --developer "My Company" \
77
77
  --email "dev@mycompany.com"
78
78
 
79
79
  # Create app with environment variables
80
- npx @seeka-labs/cli-apps init my-org my-app \
80
+ npx @seeka-labs/cli-apps@latest init my-org my-app \
81
81
  --template azure-function \
82
82
  --developer "My Company" \
83
83
  --email "dev@mycompany.com" \
84
84
  --env "SEEKA_APP_ID=your-app-id" "SEEKA_APP_SECRET=your-secret"
85
85
 
86
86
  # Create app without installing dependencies
87
- npx @seeka-labs/cli-apps init my-org my-app \
87
+ npx @seeka-labs/cli-apps@latest init my-org my-app \
88
88
  --template azure-function \
89
89
  --developer "My Company" \
90
90
  --email "dev@mycompany.com" \
91
91
  --noDependencies
92
92
 
93
93
  # Create app from a configuration file
94
- npx @seeka-labs/cli-apps init ./my-app-config.json
94
+ npx @seeka-labs/cli-apps@latest init ./my-app-config.json
95
95
  ```
96
96
 
97
97
  ---
@@ -104,10 +104,10 @@ Installs AI context files to help AI assistants understand your Seeka app struct
104
104
 
105
105
  ```bash
106
106
  # Install AI context to current directory
107
- npx @seeka-labs/cli-apps ai context
107
+ npx @seeka-labs/cli-apps@latest ai context
108
108
 
109
109
  # Install AI context to a specific directory
110
- npx @seeka-labs/cli-apps ai context --target /path/to/project
110
+ npx @seeka-labs/cli-apps@latest ai context --target /path/to/project
111
111
  ```
112
112
 
113
113
  #### Options
@@ -151,7 +151,7 @@ npx @seeka-labs/cli-apps ai context --target /path/to/project
151
151
  When you run the CLI without any arguments, it enters interactive mode:
152
152
 
153
153
  ```bash
154
- npx @seeka-labs/cli-apps
154
+ npx @seeka-labs/cli-apps@latest
155
155
  ```
156
156
 
157
157
  ### Available Actions
@@ -198,7 +198,7 @@ You can use a JSON configuration file instead of command-line arguments:
198
198
  Then run:
199
199
 
200
200
  ```bash
201
- npx @seeka-labs/cli-apps init ./my-config.json
201
+ npx @seeka-labs/cli-apps@latest init ./my-config.json
202
202
  ```
203
203
 
204
204
  ---
@@ -6,7 +6,7 @@ This index provides an overview of all available example apps that can be used a
6
6
 
7
7
  - **Total Examples**: 19
8
8
  - **Template Versions**: V3, V2, V1
9
- - **Last Updated**: 2026-01-16
9
+ - **Last Updated**: 2026-01-17
10
10
 
11
11
  ## Quick Reference by Category
12
12
 
@@ -1,43 +1,46 @@
1
- # AI Summary for Seeka App: ActiveCampaign
2
-
3
- ## Overview
4
- The Seeka app "activecampaign" is designed to integrate with ActiveCampaign CRM for syncing contacts and activity data. It leverages Azure Functions to handle webhooks and manage state with Redis, providing a seamless connection between Seeka and ActiveCampaign.
1
+ # AI Summary for Seeka App: ActiveCampaign Integration
5
2
 
6
3
  ## Purpose and Functionality
7
- - **Integration with ActiveCampaign CRM:** The app syncs contact and activity data between Seeka and ActiveCampaign.
8
- - **Webhook Handling:** Processes various webhook events such as app installation, uninstallation, and activity acceptance.
9
- - **State Management:** Uses Redis to manage installation states and other necessary data.
4
+
5
+ The Seeka app `activecampaign` is designed to integrate with ActiveCampaign CRM to sync contacts and activity data. It facilitates the management of CRM data by handling webhooks from Seeka and performing operations such as installing, updating, and uninstalling apps, as well as processing activity data.
10
6
 
11
7
  ## Key Implementation Patterns
12
- - **Azure Functions:** Utilized for serverless execution of webhook handlers and health checks.
13
- - **TypeScript:** The app is built using TypeScript, providing type safety and modern JavaScript features.
14
- - **Winston Logging:** Integrated for logging and debugging purposes, with support for Seq logging.
8
+
9
+ - **Azure Functions**: The app is built using Azure Functions, which allows it to handle HTTP requests and perform serverless operations.
10
+ - **Webhook Handling**: The app processes various webhook events from Seeka, such as app installation, settings updates, and activity acceptance.
11
+ - **State Management**: Redis is used for storing installation states, which can be managed using the `@seeka-labs/sdk-apps-server`.
15
12
 
16
13
  ## External APIs/Services Integrated
17
- - **ActiveCampaign API:** For managing contacts and pipelines within the ActiveCampaign CRM.
18
- - **Azure Storage:** Used for queue management and other storage needs.
19
- - **Redis via Upstash:** For state management and caching.
20
- - **Ngrok:** Allows local development by exposing the app to the internet for testing.
14
+
15
+ - **ActiveCampaign API**: The app interacts with ActiveCampaign for managing contacts and pipeline deals.
16
+ - **Azure Services**: Utilizes Azure Storage for queues, blobs, and tables, and Azure Functions for serverless execution.
17
+ - **Upstash Redis**: Optionally used for state management, providing a scalable Redis instance.
21
18
 
22
19
  ## Important Data Transformations
23
- - **Contact and Activity Data:** Transforms Seeka identity data to ActiveCampaign contact format using utility functions.
24
- - **Webhook Payloads:** Parses and validates incoming webhook payloads to ensure they are processed correctly.
20
+
21
+ - **Contact Management**: Transforms Seeka identity data into ActiveCampaign contact data using functions like `seekaIdentityToActiveCampaignContact`.
22
+ - **Pipeline Management**: Maps and maintains pipelines in ActiveCampaign, ensuring deals are created and updated appropriately.
25
23
 
26
24
  ## Notable Code Patterns
27
- - **Webhook Signature Validation:** Ensures security by validating webhook signatures before processing.
28
- - **Service Initialization:** Uses a `startServices` function to initialize necessary services before handling webhooks.
29
- - **Error Handling:** Implements try-catch blocks to handle errors gracefully and log them using Winston.
30
- - **State Management with Redis:** Provides a reusable pattern for managing application state in a distributed environment.
31
25
 
32
- ## Deployment and Development
33
- - **Azure Functions Deployment:** The app is configured for deployment to Azure Functions, supporting both local and cloud environments.
34
- - **Local Development with Docker:** Uses Azurite for local emulation of Azure Storage services.
35
- - **VSCode Debugging:** Supports debugging with breakpoints, primarily tested on Linux with WSL support for Windows.
26
+ - **Webhook Signature Validation**: Ensures secure processing of webhooks by validating signatures using `throwOnInvalidWebhookSignature`.
27
+ - **Service Initialization**: Uses a `startServices` function to initialize necessary services before processing webhooks.
28
+ - **Error Handling**: Implements robust error handling with logging using Winston, capturing detailed error information for debugging.
29
+
30
+ ## Development and Deployment
31
+
32
+ - **Local Development**: Supports local development with Azure Storage emulation using Azurite and local debugging via VSCode.
33
+ - **Deployment**: Ready for deployment to Azure Functions, with instructions for setting up environment variables and using GitLab for CI/CD.
34
+ - **Ngrok Integration**: Allows local testing by exposing the app to the internet using Ngrok.
35
+
36
+ ## Logging and Monitoring
37
+
38
+ - **Winston and Seq**: Integrated for logging, providing structured and centralized logging capabilities.
36
39
 
37
40
  ## References
41
+
38
42
  - [Azure Functions Documentation](https://learn.microsoft.com/en-us/azure/azure-functions/)
39
- - [ActiveCampaign API Documentation](https://developers.activecampaign.com/)
40
- - [Ngrok Documentation](https://ngrok.com/docs)
41
- - [Redis with Upstash](https://upstash.com/)
43
+ - [Azure Storage Quickstart](https://learn.microsoft.com/en-us/azure/storage/queues/storage-quickstart-queues-nodejs)
44
+ - [Ngrok Setup](https://ngrok.com/docs)
42
45
 
43
- This summary provides an AI-friendly overview of the Seeka app's architecture, key features, and integration points, facilitating better understanding and interaction with the app's implementation.
46
+ This summary provides an overview of the Seeka app's architecture and functionality, highlighting key patterns and integrations that can be referenced for similar implementations.
@@ -1,34 +1,36 @@
1
1
  # AI Summary for Seeka App: Complianz
2
2
 
3
- ## Purpose and Functionality
3
+ ## Overview
4
+ The Complianz app is a Seeka application designed to integrate consent management for GDPR and privacy compliance. It utilizes Azure Functions to handle webhooks and manage state, ensuring that user consent is properly managed and logged. The app is structured to facilitate easy deployment and development, leveraging several external services and libraries.
4
5
 
5
- The "Complianz" app is designed to integrate consent management for GDPR and privacy compliance into Seeka applications. It facilitates the handling of user consent and privacy settings, ensuring that applications comply with regulatory requirements. The app is built using Azure Functions, providing serverless execution of its components.
6
+ ## Purpose and Functionality
7
+ - **GDPR Compliance**: Manages user consent in compliance with GDPR regulations.
8
+ - **Webhook Handling**: Processes inbound webhooks from Seeka to manage app installations and updates.
9
+ - **State Management**: Utilizes Redis for storing app installation states and other necessary data.
10
+ - **Logging**: Implements centralized logging using Winston and Seq for monitoring and debugging.
6
11
 
7
12
  ## Key Implementation Patterns
8
-
9
- 1. **Azure Functions**: The app leverages Azure Functions to handle HTTP requests and manage asynchronous operations such as webhooks and queue processing.
10
- 2. **Webhook Handling**: The app processes incoming webhooks from Seeka, validating signatures and managing installation states.
11
- 3. **Queue Management**: Implements Azure Storage Queues for handling long-running operations asynchronously, ensuring compliance with Azure Function execution limits.
12
- 4. **Polling Mechanism**: Utilizes scheduled functions to perform regular checks or operations, distributing workload over time.
13
+ - **Azure Functions**: The app is built on Azure Functions, allowing for scalable and event-driven execution.
14
+ - **Webhook Processing**: Handles different types of webhook calls (e.g., installation, update, uninstallation) with validation and logging.
15
+ - **Queue and Polling**: Uses Azure storage queues for offloading long-running tasks and scheduled polling for periodic operations.
13
16
 
14
17
  ## External APIs/Services Integrated
15
-
16
- 1. **Azure Functions**: Used for deploying and executing serverless functions.
17
- 2. **Azure Storage**: Employed for queue management and storage emulation during development.
18
- 3. **Ngrok**: Facilitates local development by exposing the app to the internet for testing.
19
- 4. **Seq and Winston**: Integrated for centralized logging and monitoring of application events.
20
- 5. **Redis**: Used for state management, storing installation data and other necessary state information.
18
+ - **Azure Functions**: Core execution environment for serverless functions.
19
+ - **Redis**: Used for state management, with optional integration with Upstash for cloud-hosted Redis instances.
20
+ - **Seq and Winston**: Integrated for logging, providing a robust solution for tracking and analyzing logs.
21
+ - **Ngrok**: Utilized for exposing local development environments to the internet for testing purposes.
21
22
 
22
23
  ## Important Data Transformations
23
-
24
- - **Webhook Payload Processing**: The app parses and validates JSON payloads from incoming webhooks, ensuring data integrity and security through signature validation.
25
- - **State Management**: Transforms and stores installation data using Redis, allowing for efficient retrieval and updates.
24
+ - **Webhook Payloads**: Parses and validates webhook payloads to ensure data integrity and proper processing.
25
+ - **State Management**: Transforms installation data for storage and retrieval in Redis, ensuring consistency across app states.
26
26
 
27
27
  ## Notable Code Patterns
28
+ - **Modular Function Design**: Each function is designed to handle specific tasks, such as `seekaAppWebhook` for webhook processing and `healthCheck` for application health monitoring.
29
+ - **Error Handling and Logging**: Comprehensive error handling with detailed logging using Winston, ensuring that issues are tracked and resolved efficiently.
30
+ - **Environment Configuration**: Utilizes environment variables for configuration, supporting flexible deployment across different environments.
28
31
 
29
- 1. **Centralized Logging**: Utilizes Winston for logging, with optional Seq integration for enhanced log management and analysis.
30
- 2. **State Management with Redis**: Provides a flexible and scalable approach to manage application state, with the option to replace Redis with other providers.
31
- 3. **Error Handling**: Implements robust error handling in webhook processing to ensure graceful degradation and informative logging.
32
- 4. **Environment Configuration**: Supports development and production environments with configurable settings for Azure and Redis connections.
32
+ ## Development and Deployment
33
+ - **Local Development**: Supports local development with Docker and Ngrok for testing Azure storage and exposing local servers.
34
+ - **Continuous Deployment**: Scripts for building, testing, and deploying the app to Azure, ensuring a streamlined CI/CD process.
33
35
 
34
- This summary provides an overview of the "Complianz" app's architecture and implementation, highlighting its integration with Azure services and its focus on privacy compliance. The app's design patterns and external integrations make it a robust solution for managing GDPR consent within Seeka applications.
36
+ This summary provides an overview of the Complianz app's architecture and functionality, highlighting key aspects that AI assistants can leverage for understanding and referencing the app's implementation patterns.
@@ -1,32 +1,32 @@
1
1
  # AI Summary for Seeka App - iVvy
2
2
 
3
- ## Purpose and Functionality
4
- The iVvy app is designed to integrate with the iVvy venue management system, enabling users to track event bookings and inquiries. This app is particularly useful for managing events, venue bookings, and hospitality services.
3
+ ## Overview
4
+ The Seeka app "iVvy" is designed to integrate with the iVvy venue management platform, focusing on tracking event bookings and inquiries. It is built using the Azure Functions template and includes server-side components. The app is tailored for the events and hospitality industry, providing seamless venue management capabilities.
5
5
 
6
6
  ## Key Implementation Patterns
7
- - **Azure Functions Deployment**: The app is structured to be deployed as an Azure Function, leveraging serverless architecture for scalability and cost-effectiveness.
8
- - **AWS Lambda Integration**: The app can also be deployed on AWS Lambda, allowing flexibility in cloud service providers.
9
- - **State Management with Redis**: The app uses Redis, hosted by Upstash, for managing state, such as installations and other persistent data.
7
+ - **Serverless Architecture**: The app is designed to run on Azure Functions, leveraging serverless computing for scalability and cost-effectiveness.
8
+ - **TypeScript and Node.js**: The app is developed using TypeScript, compiled to Node.js, ensuring type safety and modern JavaScript features.
9
+ - **Continuous Integration/Continuous Deployment (CI/CD)**: Utilizes scripts for building, packaging, and deploying to AWS Lambda, facilitating automated deployment processes.
10
10
 
11
11
  ## External APIs/Services Integrated
12
- - **iVvy API**: The core integration is with the iVvy venue management system, although specific API endpoints are not detailed in the provided files.
12
+ - **iVvy API**: The app integrates with the iVvy platform to manage venue bookings and inquiries.
13
+ - **AWS Lambda**: Used for deploying the serverless function, allowing for scalable execution of the app.
14
+ - **Redis via Upstash**: Provides state management for installations and other application states.
13
15
  - **Ngrok**: Used for exposing local development environments to the internet for testing purposes.
14
- - **AWS Lambda and Azure Functions**: Both platforms are supported for deploying the serverless function.
15
- - **Upstash Redis**: Used for state management, providing a cloud-based Redis instance.
16
16
 
17
17
  ## Important Data Transformations
18
- - **State Management**: The app manages installation states and other data using Redis, which involves serializing and deserializing data for storage and retrieval.
19
- - **Environment Configuration**: The app uses environment variables for configuration, which are managed in AWS Lambda or Azure Functions settings.
18
+ - **State Management**: Utilizes Redis to store and manage application state, particularly for installations. This involves serializing and deserializing state data for efficient storage and retrieval.
19
+ - **API Requests and Responses**: The app likely transforms data between the iVvy API and the internal application logic, ensuring compatibility and correct data handling.
20
20
 
21
21
  ## Notable Code Patterns
22
- - **Serverless Express**: The app uses `@codegenie/serverless-express` to handle HTTP requests in a serverless environment, allowing Express.js applications to run on AWS Lambda.
23
- - **Logging with Winston and Seq**: Although not fully implemented, the app includes logging capabilities using Winston and Seq for structured logging.
24
- - **TypeScript and Esbuild**: The app is built using TypeScript, with `esbuild` used for bundling and transpiling the TypeScript code.
25
- - **Development and Debugging**: The app supports development workflows with tools like `nodemon` for live-reloading and VSCode debugging configurations.
22
+ - **Environment Configuration**: Uses environment variables extensively for configuration, supporting different environments (development, production).
23
+ - **Logging**: Integrates Winston and Seq for logging, although specific implementations are marked as TODO.
24
+ - **Debugging Support**: Provides robust debugging capabilities using VSCode, with configurations for breakpoints and live debugging.
25
+ - **Build and Deployment Scripts**: Comprehensive scripts for building, cleaning, and deploying the app, including AWS CLI integration for Lambda deployment.
26
26
 
27
- ## Development and Deployment
28
- - **Development Tools**: The app uses `yarn` for package management, `eslint` for linting, and `ts-node` for running TypeScript directly.
29
- - **Deployment Scripts**: The app includes scripts for building and deploying to AWS Lambda and Azure Functions, with specific instructions for setting up and deploying the app.
30
- - **Environment Management**: `.env` files are used for managing environment variables, with examples provided for required configurations.
27
+ ## Deployment and State Management
28
+ - **Azure Functions and AWS Lambda**: The app is designed to be deployed on Azure Functions but also supports deployment on AWS Lambda, providing flexibility in cloud provider choice.
29
+ - **Redis State Management**: State is managed using Redis, with Upstash as an optional provider, offering a scalable and reliable state management solution.
31
30
 
32
- This summary provides an overview of the iVvy app's architecture, integrations, and development patterns, which can be useful for AI assistants in understanding and referencing the app's implementation.
31
+ ## Conclusion
32
+ The Seeka app "iVvy" is a robust solution for venue management, leveraging modern cloud technologies and development practices. Its integration with iVvy and use of serverless architecture make it a scalable and efficient tool for managing event bookings and inquiries. The app's design patterns and deployment strategies offer valuable insights for similar applications in the events and hospitality domain.
@@ -1,29 +1,40 @@
1
- # AI Summary for Me&u Connect App
1
+ # AI Summary for Me&u Connect Seeka App
2
+
3
+ ## Overview
4
+
5
+ The **Me&u Connect** Seeka app integrates mobile ordering and payment tracking functionalities specifically for the hospitality industry, such as restaurants. It leverages Azure Functions to handle webhooks and background jobs, providing a seamless connection between mobile ordering systems and CRM capabilities.
2
6
 
3
7
  ## Purpose and Functionality
4
- The "Me&u Connect" app is designed for integration with mobile ordering and payment tracking systems in the hospitality industry. It facilitates seamless interactions between restaurant services and customer management systems, enabling efficient order processing and payment tracking.
8
+
9
+ - **Mobile Ordering Integration**: Facilitates mobile ordering for hospitality businesses.
10
+ - **Payment Tracking**: Tracks payments made through the app.
11
+ - **CRM Integration**: Connects with Me&u CRM to manage customer data and interactions.
12
+ - **Webhook Handling**: Processes various webhook events related to app installation, updates, and identity changes.
5
13
 
6
14
  ## Key Implementation Patterns
7
- - **Azure Functions**: The app is built using Azure Functions, allowing for serverless execution of code in response to events such as HTTP requests and queue messages.
8
- - **Event-Driven Architecture**: Utilizes webhooks and storage queues to handle asynchronous events and background jobs, ensuring scalable and responsive operations.
9
- - **State Management**: Employs Redis for managing application state, particularly for installation data, which can be swapped with other state providers if needed.
15
+
16
+ - **Azure Functions**: Utilizes Azure Functions to handle HTTP requests, timers, and storage queues. This serverless architecture allows for scalable and efficient processing of events and background jobs.
17
+ - **Background Jobs**: Implements background job processing using Azure Storage Queues to manage tasks like contact synchronization.
18
+ - **State Management**: Uses Redis for managing application state, such as installations and configurations.
19
+ - **Logging**: Employs Winston for logging, with plans to integrate Seq for structured logging.
10
20
 
11
21
  ## External APIs/Services Integrated
12
- - **Azure Storage**: Used for queue management, enabling the app to handle background tasks and inter-process communication.
13
- - **Redis (Upstash)**: Provides a cloud-based Redis instance for state management, particularly for storing installation states.
14
- - **Ngrok**: Facilitates local development by exposing the app to the internet, allowing for testing of webhooks and remote interactions.
22
+
23
+ - **Azure Storage**: Uses Azure Storage Queues for background job processing and Azurite for local development emulation.
24
+ - **Redis**: Utilizes Redis, optionally hosted by Upstash, for state management.
25
+ - **Ngrok**: Provides local development support by exposing the app to the internet for testing purposes.
26
+ - **Seeka SDK**: Integrates with the Seeka SDK for handling webhook payloads and managing app installations.
15
27
 
16
28
  ## Important Data Transformations
17
- - **Webhook Payload Processing**: The app processes various types of webhook payloads, such as installation, uninstallation, and identity changes, transforming them into actionable tasks within the system.
18
- - **Queue Message Handling**: Transforms incoming queue messages into structured tasks, grouping them by application installation IDs for efficient processing.
29
+
30
+ - **Webhook Payloads**: Parses and validates webhook payloads, ensuring secure and accurate processing of events.
31
+ - **Queue Payloads**: Deserializes queue messages for processing background jobs, grouping them by application installation ID for efficient handling.
19
32
 
20
33
  ## Notable Code Patterns
21
- - **Webhook Signature Validation**: Implements a robust mechanism to validate webhook signatures, ensuring secure and authenticated communications.
22
- - **Background Job Scheduling**: Uses Azure Timer triggers to schedule periodic background jobs, such as contact synchronization, optimizing resource usage and maintaining system performance.
23
- - **Error Handling and Logging**: Utilizes Winston for structured logging and error handling, providing detailed insights into application behavior and facilitating debugging.
24
34
 
25
- ## Deployment and Development
26
- - **Deployment**: The app is configured for deployment on Azure Functions, with support for free hosting options via Netlify and Upstash.
27
- - **Local Development**: Supports local development with Docker for emulating Azure Storage and Ngrok for testing webhooks, alongside a comprehensive setup for VSCode debugging.
35
+ - **Webhook Signature Validation**: Implements a security pattern for validating webhook signatures to ensure authenticity.
36
+ - **Error Handling and Logging**: Consistent error handling with detailed logging using Winston, providing insights into the app's operations and potential issues.
37
+ - **Service Initialization**: Centralized service initialization pattern (`startServices`) to ensure all necessary services are started before processing requests or jobs.
38
+ - **Queue Message Processing**: Efficient processing of queue messages with retry logic and poison queue handling for robust background job execution.
28
39
 
29
- This summary provides an overview of the Me&u Connect app's architecture, integrations, and key functionalities, serving as a reference for AI assistants to understand and interact with the app effectively.
40
+ This summary provides a high-level understanding of the Me&u Connect Seeka app's architecture and implementation, highlighting its integration with Azure services and its focus on mobile ordering and payment tracking in the hospitality sector.
@@ -1,47 +1,33 @@
1
+ ```markdown
1
2
  # AI Summary for Seeka App: Me&u Manage
2
3
 
3
- ## Overview
4
+ ## Purpose and Functionality
5
+ The "Me&u Manage" app is designed to integrate Me&u venues with the Seeka platform, enabling seamless venue management and order tracking. It automatically synchronizes customer data and activities, ensuring CRM systems remain up-to-date without manual intervention. Key features include:
4
6
 
5
- **App Name:** Me&u Manage
6
- **Purpose:** The Me&u Manage app integrates Me&u venue management with Seeka for seamless order tracking and CRM synchronization. It automates the syncing of orders and marketing consents from Me&u to Seeka, ensuring that customer data and preferences are up-to-date without manual intervention.
7
-
8
- ## Key Functionality
9
-
10
- - **Order Syncing:** Regularly imports new and updated orders from Me&u to Seeka for CRM workflows and reporting.
11
- - **Marketing Consent Syncing:** Updates customer marketing preferences in Seeka based on Me&u opt-ins.
12
- - **Automated Background Processing:** Operates on a schedule (every 15 minutes) and supports initial data backfill during installation.
13
- - **Simple Setup:** Requires Me&u API access token and venue slug for configuration.
7
+ - **Automatic Order Sync**: Regularly imports new and updated orders from Me&u, making them available for CRM workflows and reporting.
8
+ - **Marketing Consent Sync**: Updates customer preferences based on Me&u marketing opt-ins to maintain compliance and current audience lists.
9
+ - **Simple Installation**: Users can easily install and configure the app by providing a Me&u Access Token and Venue Slug.
14
10
 
15
11
  ## Key Implementation Patterns
16
-
17
- - **Azure Functions:** Utilizes Azure Functions for serverless execution of background jobs and webhooks.
18
- - **Queue Processing:** Employs Azure Storage Queues to handle order and marketing consent processing asynchronously.
19
- - **Webhook Handling:** Processes webhooks for installation, updates, and uninstallation events.
20
- - **Scheduled Jobs:** Uses a timer-triggered function to poll for new data and enqueue processing jobs.
12
+ - **Azure Functions**: The app is built using Azure Functions, leveraging serverless architecture for scalability and efficiency.
13
+ - **Scheduled Jobs**: Utilizes Azure Timer Trigger to poll for new data every 15 minutes, ensuring timely updates.
14
+ - **Queue-Based Processing**: Employs Azure Storage Queues to handle background jobs for processing orders and marketing opt-ins.
15
+ - **Webhook Handling**: Implements webhook endpoints to manage app installation, updates, and uninstallation events.
21
16
 
22
17
  ## External APIs/Services Integrated
23
-
24
- - **Me&u API:** Connects to Me&u's Stable GraphQL API to fetch orders and marketing opt-ins.
25
- - **Azure Storage:** Uses Azure Storage Queues for managing background job processing.
26
- - **Ngrok:** Facilitates local development by exposing the app to the internet for testing.
18
+ - **Me&u API**: The app interacts with the Me&u Stable GraphQL API to fetch menus, orders, and marketing opt-ins.
19
+ - **Azure Storage**: Utilizes Azure Storage Queues for managing background job processing.
20
+ - **Ngrok**: Used for exposing local development environments to the internet for testing purposes.
27
21
 
28
22
  ## Important Data Transformations
29
-
30
- - **Order and Consent Grouping:** Orders and marketing consents are grouped by `applicationInstallId` for batch processing.
31
- - **Payload Deserialization:** Queue payloads are deserialized to extract relevant data for processing.
32
- - **Error Handling and Retries:** Implements retries and error logging to handle transient errors and prevent data loss.
23
+ - **Order and Marketing Opt-In Processing**: Data from Me&u is ingested and transformed into formats suitable for Seeka's CRM workflows, segments, and automations.
24
+ - **Payload Deserialization**: Queue payloads are deserialized and grouped by application installation ID for efficient processing.
33
25
 
34
26
  ## Notable Code Patterns
27
+ - **Webhook Signature Validation**: Ensures secure processing of incoming webhooks by validating signatures.
28
+ - **Error Handling and Retries**: Implements robust error handling with retries and poison queue mechanisms to prevent data loss.
29
+ - **Logging**: Uses Winston for structured logging, aiding in monitoring and debugging.
30
+ - **Service Initialization**: Centralized service startup pattern to ensure dependencies are ready before processing requests.
35
31
 
36
- - **Webhook Signature Validation:** Ensures webhook authenticity by validating signatures.
37
- - **Background Job Triggering:** Uses a combination of Azure Functions and Storage Queues to trigger and manage background jobs efficiently.
38
- - **Logging and Profiling:** Utilizes Winston for structured logging and profiling of function execution.
39
- - **Environment Configuration:** Supports local development with Docker and Azurite for emulating Azure services.
40
-
41
- ## Development and Debugging
42
-
43
- - **Local Development:** Supports local development with Docker for Azure services emulation and Ngrok for exposing local endpoints.
44
- - **VSCode Debugging:** Provides support for debugging with breakpoints in VSCode, primarily tested on Linux.
45
- - **Environment Setup:** Detailed instructions for setting up the development environment, including Azure Storage Explorer for queue management.
46
-
47
- This summary provides a comprehensive understanding of the Me&u Manage app's purpose, implementation, and integration patterns, assisting AI in referencing and utilizing this app effectively.
32
+ This summary provides an overview of the app's architecture, integration points, and key functionalities, offering insights into its design and operational patterns.
33
+ ```
@@ -1,41 +1,44 @@
1
1
  # AI Summary for Seeka App: Now Book It
2
2
 
3
3
  ## Overview
4
- The Now Book It app is designed to integrate with restaurant reservation systems to track bookings. It leverages Azure Functions to handle webhooks and background jobs, providing a scalable solution for managing restaurant reservations and related activities.
5
4
 
6
- ## Purpose and Functionality
7
- - **Webhook Handling**: The app processes various webhook events from the Seeka platform, such as app installation, uninstallation, and activity acceptance.
8
- - **Background Jobs**: Utilizes Azure Storage Queues to manage background job processing, ensuring tasks are executed asynchronously and efficiently.
9
- - **Scheduled Tasks**: Implements scheduled polling to trigger jobs at regular intervals, facilitating periodic updates and maintenance tasks.
5
+ The **Now Book It** app is designed for integrating with restaurant reservation systems to track bookings. It is built using Azure Functions and provides functionalities for handling webhooks, managing state with Redis, and processing background jobs via Azure Storage Queues. The app is tailored for the hospitality industry, specifically focusing on restaurant reservations and bookings.
10
6
 
11
7
  ## Key Implementation Patterns
12
- - **Azure Functions**: The app is structured around serverless functions, enabling event-driven execution with minimal infrastructure management.
13
- - **Queue-based Job Processing**: Background jobs are triggered via Azure Storage Queues, allowing for decoupled and scalable task execution.
14
- - **State Management with Redis**: Installation states and other critical data are stored in Redis, providing fast and reliable access to application state.
8
+
9
+ 1. **Azure Functions**: The app uses Azure Functions to handle HTTP requests, process queue messages, and execute scheduled tasks. This serverless architecture allows for scalable and event-driven processing.
10
+
11
+ 2. **Webhook Handling**: The app processes various webhook events from the Seeka platform, such as app installations, settings updates, and activity acceptance. It validates webhook signatures to ensure secure communication.
12
+
13
+ 3. **State Management**: Redis is used for managing the state of app installations. The app can be configured to use Upstash for Redis hosting, providing a scalable and managed solution.
14
+
15
+ 4. **Background Jobs**: Background tasks are triggered using Azure Storage Queues. The app includes examples of queue processing and scheduled polling to handle periodic tasks.
16
+
17
+ 5. **Logging**: The app uses Winston for logging, with integration to Seq for structured log management and analysis.
15
18
 
16
19
  ## External APIs/Services Integrated
17
- - **Azure Functions**: Core platform for executing serverless functions.
18
- - **Azure Storage Queues**: Used for managing and processing background jobs.
19
- - **Redis (Upstash)**: Utilized for state management, offering a cloud-based, scalable Redis solution.
20
- - **Ngrok**: Facilitates local development by exposing local servers to the internet for testing purposes.
20
+
21
+ - **Azure Functions**: For serverless function execution.
22
+ - **Azure Storage Queues**: For message queueing and background job processing.
23
+ - **Redis (Upstash)**: For state management and caching.
24
+ - **Ngrok**: For exposing local development environments to the internet.
25
+ - **Seeka SDK**: For handling Seeka-specific webhook payloads and operations.
21
26
 
22
27
  ## Important Data Transformations
23
- - **Webhook Payload Processing**: Incoming webhook payloads are deserialized and validated before being processed, ensuring data integrity and security.
24
- - **Queue Payload Deserialization**: Queue messages are deserialized to extract job context, enabling precise control over job execution.
28
+
29
+ - **Webhook Payloads**: The app deserializes JSON payloads from webhooks and processes them based on their type (e.g., installation, settings update).
30
+ - **Queue Messages**: Queue messages are serialized and deserialized for processing background jobs, ensuring data integrity and consistency.
25
31
 
26
32
  ## Notable Code Patterns
27
- - **Webhook Signature Validation**: Ensures the authenticity of incoming webhooks by validating signatures, enhancing security.
28
- - **Logger Utilization**: Comprehensive logging using Winston and Seq for monitoring and debugging, providing insights into app behavior and performance.
29
- - **Service Initialization**: Centralized service startup pattern (`startServices`) to ensure all necessary services are initialized before processing requests or jobs.
30
33
 
31
- ## Deployment and Development
32
- - **Azure Deployment**: The app is configured for deployment on Azure Functions, with scripts to automate the build and deployment process.
33
- - **Local Development**: Supports local development with Docker and Azurite for emulating Azure Storage services, and Ngrok for testing webhooks.
34
+ 1. **Webhook Signature Validation**: The app includes a pattern for validating webhook signatures to ensure that incoming requests are authentic.
35
+
36
+ 2. **Background Job Triggering**: The app demonstrates how to trigger background jobs using Azure Storage Queues, which can be reused in other applications requiring asynchronous processing.
37
+
38
+ 3. **State Management with Redis**: The app's approach to managing installation state with Redis can be adapted for other applications needing scalable state management.
39
+
40
+ 4. **Scheduled Task Execution**: The use of Azure Functions' timer triggers for scheduled tasks provides a pattern for executing periodic jobs without manual intervention.
34
41
 
35
- ## References
36
- - [Azure Functions Documentation](https://learn.microsoft.com/en-us/azure/azure-functions/)
37
- - [Azure Storage Queues Documentation](https://learn.microsoft.com/en-us/azure/storage/queues/)
38
- - [Upstash Redis](https://upstash.com/)
39
- - [Ngrok](https://ngrok.com/)
42
+ 5. **Logging with Winston and Seq**: The structured logging setup offers a reusable pattern for applications needing robust logging and monitoring capabilities.
40
43
 
41
- This summary provides a comprehensive understanding of the Now Book It app's architecture and implementation, highlighting key patterns and integrations that can be leveraged for similar applications.
44
+ This summary provides an overview of the Now Book It app's architecture and implementation, highlighting its use of Azure services, webhook processing, and state management techniques.
@@ -1,41 +1,42 @@
1
- # AI Summary of Seeka App - SevenRooms Integration
1
+ # AI Summary for Seeka App - SevenRooms
2
2
 
3
3
  ## Overview
4
4
 
5
- The Seeka app for SevenRooms is designed to integrate with the SevenRooms hospitality CRM to manage restaurant reservations and guest information. It leverages Azure Functions to handle webhooks and background processing tasks, providing a scalable solution for hospitality businesses to automate and streamline their reservation and guest management workflows.
5
+ The Seeka app "sevenrooms" integrates with the SevenRooms hospitality CRM to manage restaurant reservations and guest interactions. It leverages Azure Functions to handle webhooks and manage data processing tasks related to hospitality services.
6
6
 
7
- ## Key Features
7
+ ## Purpose and Functionality
8
8
 
9
- - **Webhook Handling**: Processes inbound webhooks from SevenRooms and Seeka to update and manage reservations and guest data.
10
- - **Background Processing**: Utilizes Azure Storage Queues to offload long-running tasks, ensuring efficient handling of webhook data without exceeding Azure Function execution limits.
11
- - **Logging and Monitoring**: Implements centralized logging using Winston and optional integration with Seq for enhanced log management.
9
+ - **Integration with SevenRooms CRM**: The app processes webhooks from SevenRooms to manage reservations and guest data.
10
+ - **Azure Functions**: Utilizes serverless functions to handle HTTP requests, storage queue messages, and scheduled tasks.
11
+ - **Guest and Reservation Management**: Handles client and reservation data through webhooks and processes them for further actions.
12
12
 
13
- ## Implementation Patterns
13
+ ## Key Implementation Patterns
14
14
 
15
- - **Azure Functions**: The app is structured around Azure Functions, with HTTP-triggered functions for handling webhooks and a queue-triggered function for processing background tasks.
16
- - **State Management**: Uses Redis for storing app installation states and other necessary data, allowing for quick retrieval and updates.
17
- - **Modular Design**: Functions and services are organized into modules, promoting code reuse and maintainability.
15
+ - **Serverless Architecture**: Built on Azure Functions, allowing for scalable and efficient processing of webhook events.
16
+ - **Queue-based Processing**: Uses Azure Storage Queues to offload and process long-running tasks asynchronously.
17
+ - **Centralized Logging**: Implements Winston for logging, with optional integration with Seq for structured logging.
18
18
 
19
- ## External APIs and Services
19
+ ## External APIs/Services Integrated
20
20
 
21
- - **SevenRooms API**: Integrates with SevenRooms to receive and process reservation and guest management data.
22
- - **Azure Storage**: Utilizes Azure Storage Queues for managing background jobs and Azure Blob/Table storage for potential data storage needs.
23
- - **Redis**: Employed for state management, with optional integration with Upstash for cloud-based Redis instances.
21
+ - **SevenRooms API**: For receiving and processing webhooks related to reservations and client data.
22
+ - **Azure Services**: Utilizes Azure Functions, Azure Storage Queues, and optionally Azure Storage Explorer for managing queue items.
23
+ - **Ngrok**: For exposing local development environments to the internet, facilitating webhook testing.
24
24
 
25
- ## Data Transformations
25
+ ## Important Data Transformations
26
26
 
27
- - **Webhook Payload Processing**: Transforms incoming webhook payloads into structured data that can be processed by the app's business logic.
28
- - **Queue Message Handling**: Serializes and deserializes messages for queue processing, ensuring data integrity and consistency across background tasks.
27
+ - **Webhook Payload Handling**: Parses and processes JSON payloads from SevenRooms webhooks, extracting necessary data for further processing.
28
+ - **Queue Message Serialization**: Serializes and deserializes messages for Azure Storage Queues to ensure data integrity during asynchronous processing.
29
29
 
30
30
  ## Notable Code Patterns
31
31
 
32
- - **Centralized Logging**: Uses Winston for logging, with the ability to extend to Seq for advanced log management. This pattern can be reused in other applications requiring robust logging solutions.
33
- - **Service Initialization**: Implements a `startServices` function to initialize necessary services and dependencies, ensuring that all components are ready before processing requests.
34
- - **Error Handling and Retry Logic**: Incorporates error handling and retry mechanisms for webhook and queue processing, improving the app's resilience to transient failures.
32
+ - **Child Logger Pattern**: Uses `childLogger` to create context-specific loggers, enhancing log traceability and debugging.
33
+ - **Service Initialization**: Implements `startServices` to initialize necessary services and dependencies before processing requests.
34
+ - **State Management with Redis**: Manages app installation states and configurations using Redis, with flexibility to switch to other state providers.
35
35
 
36
- ## Development and Deployment
36
+ ## Reusable Code Snippets
37
37
 
38
- - **Local Development**: Supports local development with Docker-based emulation of Azure Storage services and Ngrok for exposing local functions to the internet.
39
- - **Continuous Deployment**: Includes scripts for building and deploying the app to Azure, facilitating a streamlined deployment process.
38
+ - **Webhook Signature Validation**: Ensures secure processing of webhooks by validating signatures using `throwOnInvalidWebhookSignature`.
39
+ - **Background Job Handling**: Processes background tasks using `triggerBackgroundJob` and `handleSevenRoomsWebhookQueueItem`, which can be adapted for other queue-based processing needs.
40
+ - **Health Check Endpoint**: Implements a simple health check function to monitor the app's availability.
40
41
 
41
- This summary provides an overview of the Seeka app's architecture and implementation, highlighting key patterns and integrations that can be referenced for similar applications in the hospitality and CRM domains.
42
+ This summary provides a high-level understanding of the Seeka app's architecture, integrations, and key functionalities, aiding AI assistants in referencing and utilizing the app's implementation patterns effectively.