Skip to content

A toy javascript runtime that mimics nodejs behavior 🦊

License

Notifications You must be signed in to change notification settings

meerhamzadev/Vixen

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

banner image

A toy javascript runtime that mimics nodejs behavior🦊


🧰 Stack

  • V8 engine: To compile and execute javascript code
  • LibUv: To initiate event loop, threads etc
  • C++: A C++ written layer to utilize above libraries and to introduce some custom functions like print, timeout etc

🛠 Requirements

  • Check v8 docs to setup v8 on your machine.
  • Check LibUv docs to setup LibUv on your machine
  • C++ compiler

🚀 Usage

To run JS code you need to first start the environment. To start run on your terminal

./start.sh

This will start the environment in watch mode. Write your JS code in example.js file.

⚠ In Vixen console.log is replace with display and setTimeout & setTimeInterval are replaced with a generic function timeout.

‼ Limitation

  • Vixen is just a toy runtime and it does not contains the full features of the nodejs or any other runtime
  • The setup may be tiresome for a few because v8 and LibUv does not support all kind of CPU architectures.

👨🏻‍💻 AUTHOR

🙋🏻‍♂️ Yo! It's Meer, a senior year CS undergrad. Let's get connected

Twitter  LinkedIn  Gmail 

About

A toy javascript runtime that mimics nodejs behavior 🦊

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages