Xeplr OS / Services

@xeplr/imports

Data imports as a drop-in module: upload a CSV/Excel/JSON file, check it against the table, load it as a New table, Append or Replace, see and download the rows the database refused, and roll back — routes, access catalog and env in one package

Install

npm install @xeplr/imports

Peer dependencies you provide: express

The idea

A file is checked against the table before anything is touched, then loaded as a new table, an append or a replace. A replace swaps the table only once every row has loaded, so a failed or stopped import leaves your data as it was; rows the database refuses are kept with the reason, and every import can be rolled back. The app supplies only its sign-in gate and its database connections.

Where it sits

Part of Services — long-running pieces. Each one boots with the same init() / start() / router() shape and mounts into an Express app you already have.

Builds on

Third-party dependencies

  • csv-parse
  • fflate
  • multer
  • saxes
  • unzipper

Documentation for @xeplr/imports is in its README on npm.

These packages are what Xeplr Analytics is made of

If you are assembling this yourself, it may be worth seeing the assembled version first.