Add JS runtime for portability and simplicity