@revealui/services
v0.7.4
Published
External service integrations — Stripe (billing + circuit breaker), Vercel (deploy + DNS). Ships with RevealUI.
Downloads
3,790
Maintainers
Readme
title: "@revealui/services" description: "External service integrations for RevealUI - Stripe (billing + circuit breaker) and Gmail API (transactional email)." visibility: public status: verified audience: user
@revealui/services
Commercial package - requires a RevealUI Pro license. Free to install and evaluate; a license key is required for production use.
External service integrations for RevealUI - Stripe (billing + circuit breaker) and Gmail API (transactional email).
Features
- Stripe Integration: Payment processing and billing operations with circuit breaker
- Email: Transactional email helpers
- Type-safe: Full TypeScript support
- Server & Client: Separate exports for server-side and client-side usage
Installation
This package is private and only used within the RevealUI monorepo via workspace:* references.
Usage
Server-side
import { stripeClient } from '@revealui/services/server'
// Use Stripe
const customer = await stripeClient.customers.create({
email: '[email protected]',
name: 'Customer Name'
})Available Exports
Server-side integrations (Node.js / Hono routes):
- Root (
@revealui/services) — re-exports Stripe + email - Server alias (
./server) — same as root - Stripe client (
./stripe/stripeClient) - Stripe payment intents (
./stripe/payment-intent) - Email helpers (
./email)
Stripe Integration
import { stripeClient } from '@revealui/services/server'
// Create customer
const customer = await stripeClient.customers.create({
email: '[email protected]'
})
// Create payment intent
const paymentIntent = await stripeClient.paymentIntents.create({
amount: 2000,
currency: 'usd',
customer: customer.id
})
// Create subscription
const subscription = await stripeClient.subscriptions.create({
customer: customer.id,
items: [{ price: 'price_xxxxx' }]
})Environment Variables
Required environment variables:
# Stripe
STRIPE_SECRET_KEY=sk_test_...
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=pk_test_...Development
# Build package
pnpm --filter @revealui/services build
# Run tests
pnpm --filter @revealui/services test
# Watch mode
pnpm --filter @revealui/services dev
# Type check
pnpm --filter @revealui/services typecheckTesting
# Run all tests
pnpm --filter @revealui/services test
# Run tests in watch mode
pnpm --filter @revealui/services test:watch
# Run with coverage
pnpm --filter @revealui/services test:coverageRelated Documentation
- Environment Variables Guide - Service API keys setup
- Architecture - Service integration patterns
License
FSL-1.1-MIT (Fair Source — converts to MIT after 2 years). See LICENSE.
