https://github.com/abaplint/transpiler
ABAP to JS transpiler & runtime
https://github.com/abaplint/transpiler
abap abaplint transpiler
Last synced: 3 months ago
JSON representation
ABAP to JS transpiler & runtime
- Host: GitHub
- URL: https://github.com/abaplint/transpiler
- Owner: abaplint
- License: mit
- Created: 2020-02-26T06:05:14.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2025-04-10T08:30:58.000Z (3 months ago)
- Last Synced: 2025-04-12T06:07:13.976Z (3 months ago)
- Topics: abap, abaplint, transpiler
- Language: TypeScript
- Homepage: https://transpiler.abaplint.org
- Size: 16.5 MB
- Stars: 86
- Watchers: 9
- Forks: 24
- Open Issues: 81
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# transpiler
[](https://www.npmjs.com/package/@abaplint/runtime)
[](https://www.npmjs.com/package/@abaplint/transpiler)
[](https://www.npmjs.com/package/@abaplint/transpiler-cli)
[](https://github.com/abaplint/transpiler/actions)Input must be ABAP 7.02 syntax, use abaplint [downport](https://rules.abaplint.org/downport/) rule to automatically change higher syntax before transpiling.
Target is [ES6](http://es6-features.org)
Playground: https://transpiler.abaplint.org
Connecting to a database is optional, currently the following databases have drivers:
* [SQLite](https://www.sqlite.org) via [@abaplint/database-sqlite](https://www.npmjs.com/package/@abaplint/database-sqlite)
* [PostgreSQL](https://www.postgresql.org) via [@abaplint/database-pg](https://www.npmjs.com/package/@abaplint/database-pg)
* [Snowflake](https://www.snowflake.com/) via [@abaplint/database-snowflake](https://www.npmjs.com/package/@abaplint/database-snowflake)## Reuse library
https://open-abap.org
## Examples
* [abapGit](https://github.com/abapGit/abapGit) runs unit tests on every push
* [abap2UI5](https://github.com/abap2UI5/abap2UI5) runs unit tests on every push
* [abap-file-formats-tools](https://github.com/SAP/abap-file-formats-tools) runs unit tests on every push## Technical
* `SY-SYSID` = `ABC`
* `SY-MANDT` = `123`
* Fixed point arithmetic is always enabled
* Encoding = [UCS-2](https://en.wikipedia.org/wiki/Universal_Coded_Character_Set)
* Time zone = [UTC](https://en.wikipedia.org/wiki/Coordinated_Universal_Time)## Development
Prerequisites: [Node.js](https://nodejs.org) 16+
For testing locally run `npm run install && npm test`