Nightmare

Dev tools

browser automation

SHOW HN2014

429points
70comments
#20of 2,272 in 2014
Top 1%of 2014 by points

How HN took it

MixedNo clear lean

10 positive, 19 neutral or asking, 1 mixed, 14 critical, out of 44 comments about the project. Thread score -0.06.

Idea: 3 for, 5 againstExecution: 2 for, 4 againstDocs: 0 for, 3 againstDesign: 1 for, 1 againstPerformance: 0 for, 1 against

The thread, comment by comment

Each row is a top-level comment and its replies, in HN's order. Select a cell to open that comment on HN.

positive neutral or mixed critical about another commenter or something else the maker

What HN said

What people liked

  • Simple, easy to use API

    From 3 comments
    • I've been wanting to programmatically get my transaction details from my bank for a while. I knew about phantomJS but never got around to trying it out. When I saw this I decided…
      resu_nimda on HN
    • I currently only have experience using CasperJS which also wraps-around PhantomJS. This has different goals (simpler) and therefore a simpler API, though. The use case at Segment…
      thathonkey on HN
    • Very nice!
      niix on HN
  • Polished, attractive website design

    From 3 comments
    • Looks like an interesting library. I have no use for it right now but maybe one day. Definitely can see why this would be useful for some people though. Their website has some…
      ryanackley on HN
    • Extra points for page design!
      brickmort on HN
    • Interesting background... creepy is good.
      oldboyFX on HN

Objections

  • PhantomJS is based on old WebKit and crashes frequently

    From 2 comments
    • PhantomJS 1.9.7 is based on an ancient version of WebKit that lacks ES5 functions like Function.prototype.bind. It also crashes pretty frequently.
      ivank on HN
    • I can absolutely concur that it crashes frequently. I have high hopes v2 fixes this. Most of the crashes are due to WebKit bugs that have since been resolved in QT5.
      baudehlo on HN
  • Examples in README and docs did not run initially; errors are unclear

    From 2 comments
    • Even after substituting the fancy ampersands on your homepage, and requiring nightmare your example still does not run: ``` var Nightmare = require('nightmare'); new Nightmare()…
      tucosan on HN
    • I've been wanting to programmatically get my transaction details from my bank for a while. I knew about phantomJS but never got around to trying it out. When I saw this I decided…
      resu_nimda on HN
  • Site does not explain what browser automation is

    From 1 comment
    • It's a polished website... and I know what javascript is, but they didn't do a good job of explaining what it is. Browser automation? Is this a test suite of some sort, something…
      NoMoreNicksLeft on HN

Requests

  • Proxy support for changing source IP

    From 1 comment
    • I'm building a bot using this, any idea of proxies i can use to change the source ip's and how i can use it with a proxy?
      henrygrew on HN
  • Way to query the DOM and check results

    From 1 comment
    • so... how does one query the DOM? It looks it has been left out of the api. Does this mean that Nightmare is only able to do brainless automation without checking browser results?
      fimdomeio on HN
  • Pass PhantomJS command line options such as ssl-protocol

    From 1 comment
    • Fantastic easy tool! There is a way to pass phantomjs command line options (eg. --ssl-protocol=X ) through nightmarejs?
      tuxone on HN

Questions

  • How does it compare to Nightwatch, Selenium, CasperJS, or ZombieJS

    From 3 comments
    • How is it different from http://nightwatchjs.org/ ?
      ankit84 on HN
    • As someone entirely unfamiliar with both Nightmare and PhantomJS, what is the typical use case? It isn't obvious to me from the examples or FAQs. Why prefer these over something…
      SnowProblem on HN
    • Does anyone know how this compares to zombie js? I'm new to headless browser testing so apologies if question isn't relevant
      nstart on HN
  • How to install on Ubuntu and run scripts

    From 1 comment
    • I use Ubuntu Linux, and I've got PhantomJS installed. Whether I use Nightmare, Nightmarejs, or Phantomjs on the command line this is what I get: ReferenceError: Can't find…
      thinkvitamin on HN

Alternatives named

  • CasperJS

    From 2 comments
    • I'm using casper now but this seems like it may be even easier.
      wehadfun on HN
    • Yeah, there's a ton of "easier to use" libraries atop Phantom. CasperJS is by far the most recognized and community-backed. Not sure what value all of these others provide.
      meritt on HN
  • Selenium

    From 2 comments
    • the problem with Phantom.js is that compared to an actual browser it still falls short. I've given up on Phantom.js all together because it is actually not a true replacement for…
      curiously on HN
    • Nightwatch runs against Selenium, Nightmare uses Phantom.js With Selenium you have full cross browser support, while Phantom is Webkit based.
      JoeAcchino on HN
  • Nightwatch.js

    From 1 comment
  • DalekJS

    From 1 comment
  • ZombieJS

    From 1 comment
    • Does anyone know how this compares to zombie js? I'm new to headless browser testing so apologies if question isn't relevant
      nstart on HN

Category, keywords, summaries and labels on this page were made by AI (Thread Reader v2) and not checked by hand. Each point links to the comments it came from.

Add a badge to your READMEShown on HackerShow
[![Shown on HackerShow](https://hackershow.org/badge.svg)](https://hackershow.org/show/8416693)