# @multisystemsuite/timezone-engine

Main entry point for the timezone-engine monorepo. Use this package when you want the full library surface from a single install.

## What it is used for

- **Default choice** for most applications (Node, React, SSR, microfrontends)
- Global timezone detection, conversion, formatting, and scheduling
- Admin, QC, shopfloor, ERP, HRMS, SaaS, and analytics apps with multi-region users

## Install

```bash
npm install @multisystemsuite/timezone-engine
```

## Usage

```typescript
import {
  createTimezoneEngine,
  detectTimezone,
  convertTimezone,
  formatDate,
  getWorldClock,
  normalizeTimezone,
  sanitizeTimezoneForDB,
  createSchedulerEngine,
  businessHoursEngine,
  shiftPlanner,
  notificationScheduler,
  createTenantManager,
} from "@multisystemsuite/timezone-engine";

const tz = detectTimezone();
const clocks = getWorldClock(["UTC", "Asia/Kolkata", "America/New_York"]);
site.TimeZone = sanitizeTimezoneForDB(req.body.TimeZone);
```

## Subpath exports

```typescript
import { formatDate } from "@multisystemsuite/timezone-engine/core";
import { timezoneMiddleware } from "@multisystemsuite/timezone-engine/node";
import { TimezoneProvider } from "@multisystemsuite/timezone-engine/react";
```

## Related packages

Install granular packages only when you need tree-shaking or framework-specific bundles:

| Package                                            | Use when                           |
| -------------------------------------------------- | ---------------------------------- |
| `@multisystemsuite/timezone-engine-core`           | Node/browser without React/Angular |
| `@multisystemsuite/timezone-engine-node`           | Express/API middleware only        |
| `@multisystemsuite/timezone-engine-react`          | React / Next.js apps               |
| `@multisystemsuite/timezone-engine-angular`        | Angular apps                       |
| `@multisystemsuite/timezone-engine-business-hours` | Business hours only                |
| `@multisystemsuite/timezone-engine-shift-engine`   | Shifts & payroll                   |
| `@multisystemsuite/timezone-engine-tenant-manager` | Multi-tenant SaaS                  |
| `@multisystemsuite/timezone-engine-security`       | API timezone validation            |
| `@multisystemsuite/timezone-engine-analytics`      | Dashboard aggregation              |
| `@multisystemsuite/timezone-engine-audit`          | Audit timestamps                   |

Each package has its own **README** under `packages/<name>/README.md` with install and usage examples.

## Keywords

`timezone`, `world-clock`, `date-formatting`, `scheduling`, `enterprise`, `typescript`, `react`, `angular`, `nodejs`, `iana`, `dst`, `locale`, `microfrontend`, `global-time`, `utc`

## License

MIT
