Skip to main content

Ledgiventa - Frontend

This folder contains the React app and frontend code for Ledgiventa. The frontend is built with Next.js and Tailwind CSS, using shared UI components and centralized design tokens for consistency. All domain models are imported from shared/models for type safety and multi-tenancy support.

Structure

frontend/
├── src/
│ ├── pages/ # Route-based pages (buildings, units, ledger, statements, reports, users, settings, etc.)
│ ├── components/ # Reusable UI components (common, buildings, etc.)
│ ├── modules/ # Shared types and logic
│ ├── services/ # API clients and integrations
│ ├── context/ # React context providers
│ ├── utils/ # Utility functions
│ └── index.tsx # App entry point
├── public/ # Static assets & help docs
├── package.json # Frontend dependencies and scripts
└── README.md # This file

Key Features

  • Multi-tenancy: subdomain-based isolation for each master account
  • Clerk-powered user management and permissions
  • Shared UI components and centralized Tailwind CSS for consistent design
  • Rich UI for service charge management, budgeting, reporting, and communications
  • Modular pages for all business areas (buildings, units, ledger, statements, reports, users, settings)
  • React + Tailwind for modern, responsive design
  • Shared domain models imported from shared/models for type safety
  • All new UI sections use shared components and follow the style guide in /docs/frontend/style-guide.md

Setup & Development

Install dependencies

npm install

Start Development Server

npm start

Build for Production

npm run build

Testing

npm test

Dependencies

See package.json for all dependencies. Key packages:

  • React, React Router, Zustand, Clerk, Tailwind, Chart.js, Axios
  • Typescript, ESLint, Prettier

Documentation

See ../docs/frontend/README.md for frontend details. See ../docs/guides/development.md for development setup.

Notes

  • Ensure you are invited by a master account admin to access your subdomain.
  • For help, see the public help documentation.
  • All new UI components should be documented in the style guide and, if using, Storybook stories.

License

Proprietary - All Rights Reserved