A client-side web application that automates data transformation, converting user-entered text into structured Changelog XML, eliminating the need for manual XML generation.
To run this project locally, follow these steps:
- Clone the repository.
git clone https://github.com/jd0x0021/lcgenjd.git
- Install dependencies.
cd lcgenjd
npm install
- Start the application.
npm run dev
The app will be running at http://localhost:5173.
- Enter data: use the Left Panel, to input your changelog details, such as author, logical file path, changesets etc.
- Real-time update: The changelog XML (see XML example) is generated instantly as you make changes in the changelog data (user-input) panel (left panel), which will automatically update the preview on the xml visualizer panel (right panel).
A changeset is the basic unit of change in Liquibase. You store all your changesets in your changelog. Your changesets contain Change Types (SQL statements applied to your database) that specify what each change does, such as creating a new table, adding a column to an existing table, inserting new data, or updating an existing database record.
Clicking the Add Changeset button on the upper left corner adds a changeset to the changelog. Each changeset will automatically have a unique ID, which is derived from the logical file path.
2.2. User-Input to XML Mapping (for Insert Change Type)
- Database table's name (this is the table where we'll insert our new data). Clicking the Add Table button in the changeset component will add a new database table.
- One row in this insert DML table is equivalent to a whole new row inserted to the specified database table.
- Automatic rollbacks (all rows that are added by this changeset will be rolled back by this condition).
- react-split: provides a responsive, and dynamic split-view layout.
- react-syntax-highlighter: adds syntax highlighting to the structured XML output for improved readability.
This client-side web application is hosted on Cloudflare Pages for fast and reliable deployment.