@astroway/react
v0.1.0-alpha.1
Published
Official React companion for @astroway/sdk — hooks and provider for natal charts, synastry, transits, Vedic dashas, AI horoscopes.
Downloads
29
Maintainers
Readme
@astroway/react
Official React companion for
@astroway/sdk— natal charts, synastry, transits, Vedic dashas, AI horoscopes. Provider + hooks, zero extra dependencies.
Install
npm install @astroway/react @astroway/sdk react@astroway/sdk and react (>=18) are peer dependencies — bring your own.
Quick start
import { AstrowayProvider, useNatalChart } from '@astroway/react';
function App() {
return (
<AstrowayProvider options={{ apiKey: import.meta.env.VITE_AW_KEY }}>
<Chart />
</AstrowayProvider>
);
}
function Chart() {
const { data, error, loading } = useNatalChart({
date: '1990-01-15',
time: '14:30:00',
timezoneOffset: 3,
latitude: 50.45,
longitude: 30.52,
});
if (loading) return <p>Computing chart…</p>;
if (error) return <p>Error: {error.message}</p>;
return <pre>{JSON.stringify(data, null, 2)}</pre>;
}API
<AstrowayProvider>
Wrap your tree once near the root. Pass either a pre-built client or inline options:
<AstrowayProvider options={{ apiKey: 'aw_live_…' }}>
<AstrowayProvider client={existingAstrowayInstance}>useAstroway()
Returns the wrapped Astroway instance — escape hatch for one-off imperative calls inside event handlers / effects.
useAstrowayQuery(factory)
Generic query hook. Pass a (aw) => Promise<T> factory; returns { data, error, loading }. Pass null to skip:
const { data, error, loading } = useAstrowayQuery(
useCallback((aw) => aw.synastry.aspectGrid({ a: bodyA, b: bodyB }), [bodyA, bodyB]),
);Wrap the factory in useCallback (or memoise its body) — the effect re-runs on factory identity change, exactly like react-query's queryFn.
useNatalChart(body)
Convenience hook for POST /v1/chart. Pass null to skip the call (useful while waiting on form input).
Stability
@astroway/react follows the same SemVer commitment as @astroway/sdk. Pre-1.0 minors may add hooks; alpha/beta/rc patches won't remove or rename existing ones.
Roadmap
0.1.0-alpha.x—useAstrowayQuery,useNatalChart. (current)0.1.0-alpha.2+—useTransits,useSynastry,useVedicDashatyped convenience hooks.0.1.0-beta.1— Suspense-compatible variants.0.1.0-rc.1— Server-component compatibility (Next.js App Router, "use client" boundaries).0.1.0— stable surface freeze.
Links
- 📦 npm: https://www.npmjs.com/package/@astroway/react
- 📦 SDK:
@astroway/sdk - 📘 API docs: https://api.astroway.info/docs/api/
- 💰 Pricing: https://api.astroway.info/pricing/
- 🌐 Website: https://astroway.info
License
MIT — see LICENSE.
