🔗 Third-Party Integrations
Hey, Inner Journey integrators! 👋 This document provides a technical overview of the key third-party services that power the Inner Journey platform. These services are essential for core features like authentication, AI-driven insights, user interactions, analytics, and robust infrastructure. Let's ensure our integrations remain seamless and efficient! 🌟
🛠️ Overview of Services
Here's a breakdown of the integrated services and their roles:
Google Cloud
- Purpose: Provides the foundational cloud infrastructure for hosting, deployment, security, and operational management.
- Integration:
- Cloud Run: Hosts the scalable FastAPI backend application.
- Secrets Manager: Securely stores sensitive API keys and credentials (e.g., Firebase, Gemini API keys).
- Logging and Monitoring: Tracks application performance, errors, and resource usage (integrated with Cloud Run, etc.).
Firebase
- Purpose: Offers backend-as-a-service (BaaS) capabilities, primarily for authentication, data storage, and frontend hosting.
- Integration:
- Firebase Authentication: Manages user sign-up, login processes, and token verification (leveraged in
auth_service.py). - Firestore: NoSQL database storing user profiles, personalized activations, and program data (accessed via
firebase_service.py). - Firebase Hosting: Hosts the static React frontend application, ensuring global content delivery.
- Firebase Authentication: Manages user sign-up, login processes, and token verification (leveraged in
Google Gemini
- Purpose: Powers the generation of AI-driven insights and personalized user "activations" (content/tasks).
- Integration: Utilized in the backend (
gemini_service.py) to dynamically create activations through the/gemini/getActivationendpoint, enhancing user self-discovery.
Vertex AI
- Purpose: Enables sophisticated analysis of user responses to provide deeper, personalized insights and feedback.
- Integration: Integrated into the backend (
vertex_service.py) to process user inputs via the/vertex/analyze-responsesendpoint, contributing to adaptive user journeys.
Dialogflow CX
- Purpose: Manages complex, stateful conversational flows for rich user interactions.
- Integration: Used in the backend for structured onboarding conversations (
onboarding_service.py). Planned future use includes developing advanced voice-based agents.
Sinch Voice API
- Purpose: Facilitates phone number verification as part of the user authentication and security process.
- Integration: Integrated in the backend to send verification codes during user onboarding (implementation planned within
onboarding_service.py).
GitHub API
- Purpose: Retrieves project management data for internal task tracking, roadmap visualization, and feature prioritization (e.g., using MoSCoW).
- Integration: Accessed via the backend (
github_service.py) to fetch project details through the/api/github/projectendpoint for development monitoring.
Genkit (Google AI)
- Purpose: An open-source framework intended to streamline the development, evaluation, and deployment of AI-powered features.
- Integration: Planned for future backend implementation to enhance AI workflow reliability and observability, particularly for structured data generation like program creation.
VedAstro
- Purpose: Provides astrological calculations used for enriching user profiles and potentially personalizing content.
- Integration: Planned for future backend integration to compute astrological data (e.g., sun sign, life path number) based on user-provided birth information, adding a layer to user profiling for self-exploration.
Google Analytics
- Purpose: Tracks user behavior, measures engagement, and analyzes website traffic to generate insights for platform optimization.
- Integration: Planned for frontend integration to monitor user interactions, feature adoption, and conversion funnels, informing data-driven decisions for improving user experience and retention.
Google Cloud Translation API
- Purpose: Enables automated translation of content to support multiple languages within the platform and documentation.
- Integration: Currently used in helper scripts (
/help_scripts/) for translating documentation content, maintaining consistency between English (/docs/en/) and Swedish (/docs/sv/) versions.
🔒 Security and Management
- Secrets Management: All sensitive API keys and credentials for third-party services are securely stored and managed using Google Cloud Secrets Manager. Access is tightly controlled.
- Monitoring & Alerting: Service usage, performance metrics, and potential errors are continuously monitored through Google Cloud Logging and Monitoring. Alerts are configured for critical issues.
- Dependency Management: Project dependencies are explicitly managed:
- Frontend:
package.json(npm/yarn) - Backend:
requirements.txt(pip)
- Frontend:
For more detailed integration code examples and implementation specifics, please refer to the relevant service modules in the project repositories: