Jonathan Duck

This page is under some heavy construction.

Please ignore any references to chickens, consipiracy theories, or DirectX. Here you can find some open source projects I've been working on and some old blog posts I ported from


I mostly like to code, but I have other interests too.

  • Write all the code
  • Attending church
  • Read books and stuff
  • Drink hot chocolate
  • Homework (not really)
  • Camping and hiking


Github projects are always cool.

Fish Eater

An port of a game I made in C# for my little sister. An early JavaScript project to teach me the language. Also a fun little game. Fair warning: there is sound that plays.

LDS Scriptures

This is an application for downloading and reading scriptures via a Google Chrome Extension. This is no longer under maintainance because I grew tired of the Chrome API's changing and blocking my ways of accessing web resources for security. It does some cool stuff, but is likely broken from repeated refactors. I am currently rewriting this as a new project in Go, called ldss.


There is not a lot here, but maybe there will be now that I have this set up.

  • LDS Scriptures 3.0 - Now Open Source My most popular Chrome extension, LDS Scriptures, has been moved. You can still download the 2.3 version from the Chrome Web Store, but the newest Alpha and any future updates will be on GitHub. You should have no issues running both side by side, except for when Chrome ends the API's used in version 2.3.

    It features a partially completed, total rewrite of version 2. It can now access much more content, including chapter headings and footnotes. Unfortunately, I don't have the time to continue to develop it, so I am leaving it to the open source community if they would like to contribute. I will likely go to it every now and then to make updates and cleanup. I will also look at pull requests, but please don't expect any updates any time soon. This has been a great resource for myself and others, so I hope that it continues to get use. I have been learning a lot about JavaScript and development processes in general as I have been working on this project, but I find the Chrome Extension platform too unstable. The existing code will run somewhat on FireFox. I have not tested it recently, but earlier tries have worked with the help of the PHP file included in the project.

    Try it out and see more details in the GitHub project.
  • Javascript Object Browser Update 1.2.0

    Hey everyone. I just released an update to my Chrome Extension Javascript Object Browser. Updates include:

    • Alphabetic Sorting (finally) 
    • Newish Icon 
    • The functions and objects the extension uses are now anonymous, so they won't show up in the browser.
    • Updates for Chrome extensions manifest version 2 and security handling.
    • Added a bunch more permissions to allow it to access more chrome APIs

    The original version was not very good. This one is a little better, but not a lot. I write the tool when I was brand new to JavaScript and web development. I have started to implement some better standards and code layout.

    There is a lot more this tool can do than meets the eye. For example:
    • You can use it as a playground for Chrome and HTML5 APIs. Open up a Chrome JavaScript Console with Ctrl+Shift+J (It is way better than the one I built in.)
    • Use it as a reference. I have found some databases of JavaScript documentation, but I have yet to take the plunge of having the app use these. It can still be useful for learning the DOM, etc.
    • Save the page and use it in another browser. Just hit Ctrl+S and then open it in Firefox or IE.
      • Nevermind, I just checked and it does not work in IE, and you have to view source and save the index.html and index.js files for it to work in Firefox. I will have to fix IE support later.
      • The update for chrome, now makes it no longer a single html file. (That was a feature.)
    • Explore APIs of external libraries. Warning: This uses the eval function and is very dangerous. Even more than running it in a regular web browser. Any JavaScript files you put in there will have access to all the data on all your tabs through the Chrome Extension APIs. Please be careful and use only well known libraries.
    Head on over the the Chrome Web Store and try it out.

    UPDATE: I just pushed out a fix for a regression introduced with loading libraries. While I was at it, I added a few new features. There is now a toggle for the panel and a clear message about it's usage of eval.
  • Reciplease

    I have written a program called Reciplease. I wrote it as a Christmas present for my mom. It is a completely offline recipe organizer. It runs as a shareable *.exe that can be emailed and self installs. The recipes are each stored in a separate file so they can be organized how you like. This program is free to use.
  • See more...