Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

annlite-web

The main public Ann Lite platform — Next.js + TypeScript.

Purpose

The public-facing site: prayers, reflections, resources, charity projects, the donation flow, transparency reporting, and account pages.

Architecture

annlite-web/
├── app/                 # Next.js App Router pages
│   ├── prayers/ reflections/ resources/ charity/
│   ├── donate/           # the two-method donation flow
│   ├── transparency/
│   ├── about/ contact/ account/
│   └── layout.tsx, page.tsx
├── components/            # web-specific composition (page sections), NOT base UI
├── lib/
│   ├── api.ts               # the only module that calls annlite-backend
│   └── apiModules.ts
├── styles/
├── tests/
└── docs/ARCHITECTURE.md

Base UI primitives (Button, Card, Input, Modal, DonationButton, ContentCard) come from @annlite/design-system — this repo does not redefine them.

See docs/ARCHITECTURE.md for the full data-flow and payment-boundary rules.

Installation

npm install
cp .env.example .env.local

Configuration

  • NEXT_PUBLIC_API_BASE_URL — points at annlite-backend, e.g. http://localhost:4000/api/v1

No payment provider keys belong in this repository, ever — see Security below.

Development

npm run dev
npm run build
npm start

Testing

npm test

Includes a guardrail test (tests/paymentBoundary.test.ts) asserting the donate flow never attempts to confirm a payment or write donation totals itself.

Security Considerations

  • No database connection, no payment provider credentials, and no payment confirmation logic exist in this repository.
  • The donate page only ever redirects the donor to a provider-hosted destination (providerRedirectUrl) returned by annlite-backend — it never collects card details itself.
  • All rendered content comes from public, already-filtered backend endpoints (published/active only).

Related Ann Lite Repositories

  • Depends on: annlite-backend (all data), annlite-design-system (all UI)
  • Depended on by: end users (public site)

About

annlite nextjs typescript nonprofit donation-platform

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages