Ohmyform Software

OhMyForm Free Form Builder

Open Source Alternative to TypeForm for Forms and Surveys

OhMyForm provides form builder tools to craft online forms. Generate professional looking embeddable forms for surveys, market research and recruiting.


OhMyForm is 100% open source software to generate professional grade mobile ready forms, surveys and questionnaires. Use of standard web technologies makes it easier to embed the forms on desktop, web or mobile apps.

OhMyForm is one of the most popular alternative to the Google Forms, TypeForm, Wufoo, Formik, Simple Form and Gravity Forms. It gives you all the features you need to build and distribute your forms for free. Along with the form building features it also provides you the tools to analyze your form submissions.

Power of open source software comes through its community and OhMyForm has ever improving and top notch developer community which is improving the software on regular basis.

OhMyForm doesn’t come with any paid or hosted plans its 100% open source and gives you all the control to host the software yourself. It comes with a docker image as well which makes it easy to set up and host it in your infrastructure. Though this requires you to manage the infrastructure and security as well.

OhMyForm is an actively under development software and they have some comprehensive list of features they are currently working on like multi language support, export as JSON, CSV and XML. And they also have a list of future enhancement in form a roadmap for version 1.0

System Requirements

In order to configure ohmyform, you must have the following softwares

  • Node.js
  • Mongo DB
  • Redis
  • Email Instance


Following are the key features of ohmyform

  • Multi-Language Support (Semi implemented)
  • 11 possible question types
  • Editable start and end pages
  • Export Submissions to XLS, JSON or CSV
  • Native Analytics and Google Analytics Support
  • Custom Subdomains for each User
  • Embeddable Forms
  • Forms as a Service API.

On the Roadmap for v1.0.0

  • Implement encryption for all form data
  • Add Typeform API integration
  • Add plugin/3rd party integration support (ala Slack)
  • Create wiki for easy installation and setup
  • Add Stripe/Payment Form field
  • Add Custom Background and Dropdown Field Images
  • Add File Upload Form Field
  • Deployable with Heroku and DockerHub
  • Ditch MongoDB for a drop in replacement with better licensing.

Installation Instructions

Docker affords us the luxury of only really having to deal with a very limited number of possible deployment scenarios as we get to ship the entire environment with the app without costing you or us much in the process. Before docker to achieve this we would’ve had to ship an entire virtual machine or even worse build you an identical server and ship it your way. Now its just a docker pull away from reality. This is why we’re going with Docker, there will be documentation on how to do things directly with the source however ideally that will only be Contributor facing.

Local Development

The steps are as follows:

  • Step One: git clone https://github.com/ohmyform/ohmyform.git
  • Step Two: Modify anything you want to in the source.
  • Step Three: cd ohmyform
  • Setp Four: git submodule update –init
  • Step Five: docker-compose up -d
  • Step Six: docker-compose ps

You should at this point have a working instance to play with at http://localhost:5000/ within moments.

Installation of a Production Instance

OhMyForm recently underwent heavy re-certification and re-factoring before we would recommend that you use it in production. We have managed to achieve the goal of having a working updated and CVE free pre 1.0 release available. We are going to aim for a number of things to be completed before we consider it 1.0 stable but you’re welcomed to run it for small campaigns. It’s unlikely that we’re going to break the storage system.

Compile from source

This won’t typically be supported and most QA via Git Issues will have this line cited and will be closed to triage edge cases, we don’t want to support infinite possible edge cases. Conversely we will definitely consider all issues fairly however if it will require a significant effort or distracts heavily from scope without reasonable cause we will likely triage it out of the tracker.