halonium

A browser automation library written in Nim

Pure Nim score 15/100 · tests present · no docs generated

Summary

Latest Version Unknown
License MIT
CI Status Failing
Downloads 0
Last Indexed 2026-07-21 05:24

Installation

nimble install halonium
choosenim install halonium
git clone https://github.com/halonium/halonium

OS Compatibility

Platform Linux macOS Windows FreeBSD OpenBSD NetBSD Android iOS WASM Embedded
halonium - - - - - - -

Source

Repository https://github.com/halonium/halonium
Homepage https://github.com/halonium/halonium
Registry Source nimble_official

README

halonium

A browser automation engine written in Nim translated from Python.

Status

This library is mostly converted from the Python selenium codebase as of ~Dec 2019. There are no automated tests yet, but most webdrivers are working from basic testing (see src/halonium/browser.nim for supported browsers). Some things might not work yet which automated testing would catch. Feel free to file issues :)

Usage

See examples for detailed usage.

import options, os
import halonium

proc main() =
  var session = createSession(Chrome)
  session.navigate("https://google.com")

  let searchBar = "input[title=\"Search\"]"
  let element = session.waitForElement(searchBar).get()

  element.sendKeys("clowns", Key.Enter)

  let firstATag = session.waitForElement("#search a").get()
  firstATag.click()
  sleep(1000)

  session.stop()

main()