Third-Party Integrations
All sensitive keys and environment variables should be properly secured and never committed to version control. Use appropriate secret management solutions for different environments.
StarterAppKit integrates with several third-party services that require configuration through environment variables. Below are the key services and their respective configurations:
Google Authentication
Google Sign-In enables users to authenticate using their Google accounts.
Required Environment Variables:
GOOGLE_CLIENT_ID
: Your Google OAuth 2.0 client ID
GOOGLE_REDIRECT_URI
: The authorized redirect URI for OAuth flow
Ensure your redirect URIs are properly configured in both your application and Google Cloud Console. Mismatched URIs will cause authentication failures.
To set up Google Authentication:
Visit the Google Cloud Console
Create or select a project
Enable the Google Sign-In API
Create OAuth 2.0 credentials
Add authorized redirect URIs
Stripe
Stripe handles payment processing within the application.
Required Environment Variables:
STRIPE_SK
: Your Stripe Secret Key
STRIPE_PK
: Your Stripe Publishable Key
STRIPE_WEBHOOK_SECRET
: Your Stripe Webhook Secret Key
Never expose your Stripe Secret Key (SK) in client-side code. Always keep it secure on your server.
To configure Stripe:
Create a Stripe account
Obtain your API keys from the Stripe Dashboard
Configure webhook endpoints if needed
Apple In-App Purchases
For iOS in-app purchase validation and receipt verification through App Store Connect .
Required Environment Variables:
APPLE_RECEIPT_SECRET
: Your App Store Connect shared secret
APPLE_RECEIPT_ENVIRONMENT
: Set to either sandbox
or production
BUNDLE_ID
: Your iOS app bundle identifier
Always test in-app purchases using the sandbox environment first. The production environment should only be used after thorough testing.
For setup instructions, visit the Apple In-App Purchase Documentation .
Flagsmith
Flagsmith provides feature flag management.
Required Environment Variables:
FLAGSMITH_KEY
: Your Flagsmith API key
Remember to set up appropriate fallback values for all feature flags in case the Flagsmith service is unreachable.
To set up Flagsmith:
Create an account at Flagsmith
Create a new project
Obtain your API key from the project settings
See the Flagsmith Documentation for implementation details
Email Service (SMTP)
For sending transactional emails and magic links.
Required Environment Variables:
SMTP_USERNAME
: Your SMTP server username
SMTP_PASSWORD
: Your SMTP server password
SMTP_HOST
: Your SMTP server hostname
Implement proper email validation and rate limiting to prevent abuse of your email service.
Common SMTP providers:
Magic Link Authentication
Secure passwordless authentication system.
Required Environment Variables:
MAGIC_LINK_SECRET
: Secret key for generating secure magic links
Magic links should have a short expiration time and be single-use only to maintain security.
Development Considerations
When deploying to production, ensure all development-specific configurations are removed and proper security measures are in place.
Additional Notes
Different values may be needed for development, staging, and production environments
Refer to each service's documentation for best practices on key management and security
Consider using a secure secret management system for production deployments
For a complete list of dependencies and integrations:
Mobile app: Review Package Dependencies in Xcode
Backend: Check package.json
in the backend codebase