
Download for Windows
Latest version: 0.9.0-alphaDownload for macOS
Latest version: 0.9.0-alphaš” What is NAVA?
NAVA is a declarative wrapper for browser automation based on Playwright.
It lets you quickly create flexible scripts in a simple and clear JSON-based .nava format, without the need to write code. For most tasks, a declarative description is enough, but you can also add JavaScript snippets to extend functionality and perform advanced operations when needed.
š ļø Playwright
To work with browsers, NAVA uses Playwright. The first time you run NAVA, it will automatically check for required browser engines and offer to install them if they are missing. No manual setup is needed.
š Installation and Launch
- Download the NAVA archive for your operating system.
- Extract the archive to a convenient location on your computer.
- Run NAVA from the command line as shown in the examples below.
Linux / macOS
Windows
The file test.nava is a sample basic script. It is included in the program archive.
š test.nava
{ "environment": { "browser": "chromium" }, "context": { "targets": [ { "url": "https://google.com", "name": "Google" } ] }, "flow": [ { "action": "Navigate", "preJs": { "inline": "console.log('Before step in browser!')" }, "postJs": { "inline": "window._navaStore.flow['pageTitle'] = document.title;" } }, { "action": "log", "message": "The page title captured via PreHostJs: {flow:pageTitle}", "style": "bold green" } ] }
What does this script do?
Step 1: Output to NAVA console before navigation
Logs a message to the console 'Before step in browser!'.
Step 2: Navigate to Google
Opens google.com.
Step 3: Save page title in flow storage
window._navaStore.flow['pageTitle'] = document.title;
Step 4: Print captured page title to NAVA console
Prints the saved title.
š·ļø Versions
Note from the author: NAVA is an experimental pet project that Iām building out of personal interest and for skill development.
Iām not a professional developer, so you may find some unconventional solutions here. Feedback and suggestions are always welcome!