Skip to content
I may be slow to respond.
I may be slow to respond.


  • Arctic Code Vault Contributor


Hi! My name is Oskar, and this is where you'll most of my programming projects (see Pinned below). Here's an overview of stuff I'm working on, or have worked on:

🗒️ My blog, with some highlights:

🎤 Conference talks

📖 Property-Based Testing in a Screencast Editor

🧪 Quickstrom: High-confidence browser testing

📽️ Komposition: The video editor built for screencasters

❤️ Support

If you'd like to support any of my work, and treat yourself to an inspiring read about property-based testing, please buy the book ($10 or higher if you'd like).

Follow me on Twitter for various updates.


  1. The video editor built for screencasters

    Haskell 405 23

  2. Testing framework for Purescript

    PureScript 105 36

  3. Declarative GTK+ programming in Haskell

    Haskell 232 20

  4. A Pandoc filter for including code from source files

    Haskell 101 17

  5. A Pandoc filter for emphasizing code in fenced blocks

    Haskell 22 6

  6. Type-safe effectful state machines in Haskell

    Haskell 88 7

788 contributions in the last year

Nov Dec Jan Feb Mar Apr May Jun Jul Aug Sep Oct Mon Wed Fri

Contribution activity

October 2020

owickstrom has no activity yet for this period.

September 2020

Created a pull request in quickstrom/quickstrom that received 2 comments

Add failing file upload spec and html

+60 −0 2 comments

Created an issue in nbloomf/webdriver-w3c that received 6 comments

Unrecognized capability with ChromeOptions

Hi! Thanks for this library. I'm currently using it in When using chromedriver and configuring this client with ChromeOptions, I get…


Seeing something unexpected? Take a look at the GitHub profile guide.

You can’t perform that action at this time.