https://github.com/oetherington/glinka
A fast Typescript compiler written in Zig
https://github.com/oetherington/glinka
compiler transpiler typescript zig
Last synced: about 1 year ago
JSON representation
A fast Typescript compiler written in Zig
- Host: GitHub
- URL: https://github.com/oetherington/glinka
- Owner: oetherington
- License: agpl-3.0
- Created: 2021-09-09T20:52:00.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2022-02-13T15:56:57.000Z (over 4 years ago)
- Last Synced: 2025-04-05T00:34:44.412Z (about 1 year ago)
- Topics: compiler, transpiler, typescript, zig
- Language: Zig
- Homepage:
- Size: 1.14 MB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: COPYING
Awesome Lists containing this project
README
# Glinka
[](https://github.com/oetherington/glinka/actions)
[](https://www.etherington.io/glinka-code-coverage/)
[](https://npmjs.org/package/glinka)
Glinka is a Typescript compiler written in Zig designed for speed. Please note
that it is still a work in progress and large portions of the language are not
yet implemented. For a general overview of what's already available you can look
in the `integration/tests` directory and at the `TODO` file.
### Building
You will need the [Zig compiler](https://ziglang.org/download/) to build
Glinka. Glinka is kept up-to-date with the HEAD of the Zig master branch.
Create a debug build: `make`.
Create a production build: `make release`.
Run unit tests: `make test`.
Create a unit test coverage report (requires `kcov` to be installed):
`make coverage`.
Run integration tests (you must run `npm install` before the first time):
`make integration`.
### Contributing
Pull requests and bug reports are welcome
[on Github](https://github.com/oetherington/glinka).
Contributors should follow the
[Contributor Covenant](https://www.contributor-covenant.org/version/2/1/code_of_conduct/).
### Copying
Glinka is free-software under the
[GNU AGPLv3](https://www.gnu.org/licenses/agpl-3.0.en.html) (see the included
`COPYING` file for more information).