Neo 🐱👤
Neo, a scripting language for web automation ~~
Documentation 📃
Please refer to the API docs.
Running Neo Files from the Command Line 💻
Installation ⚡
Install Bundled Program 🌌
Install the Neo application to your machine.
- Visit the latest release.
- Download the
neo.exe
file and put it in a special place on your machine. - Install the browser binary to go with Neo.
neo --download --chromium # Or --firefox or --webkit
Build from Source 🏗
git clone https://github.com/EthanThatOneKid/neo # Clone this repository cd neo # Navigate to this repository npm i # Install dependencies npm run build # Compile TypeScript to JavaScript npm i -g # Globally install Neo module
Usage 🐹
After following the installation steps, the
neo
keyword should be accessible from anywhere on your machine
neo --helpneo path/to/neo-file.neoneo https://raw.githubusercontent.com/EthanThatOneKid/neo/master/tutorial.neo # Try quick test ;)
Changes in the Browser Extension Environment 💄
The command-line interface version of the Neo language relies on a page object supplied by Playwright. The Neo language utilizes some functions given by this object in order to operate the simulated browser page. In order for Neo to run in the browser via a browser extension, this page object must be replicated for usage within the browser. In the Neo Companion extension, there must be a page object that contains all of the functions that are used by Neo from Playwright's page object.
Developer's Note ✏
I really like Neopets, but sometimes, I am short on time and I am unable to do all my dailies manually. I created this language so I could script out all of my Neopets dailies and also because I thought it would be a fun project since I enjoy recreational programming.
Edit 1/18/20: During the development of this project, Neopets started using a security feature that makes Puppeteer/Playwright interaction entirely impossible. Because of this, instead of making this language exclusively for Neopets scripting, I decided to make it an all-purpose web-scripting language.
Edit 4/28/20: I have completed the modern version of the Neo language complete with API docs and all. Let the automation begin!
Developed with 💖 by EthanThatOneKid