In all my years of working in SharePoint, there has been one consistent need from users: Forms… Better looking forms… more powerful forms… mobile friendly forms… There has ALWAYS been a need for a better forms experience in SharePoint. To help address this need, I created a forms solution for SharePoint several years ago called StratusForms. StratusForms allows you to create forms in SharePoint using HTML, JavaScript, and CSS and works for SharePoint 2007, 2010, 2013, 2016, and Office 365. The goal of StratusForms was to remove limitations of form creation in SharePoint and to get developers off of InfoPath.
Some backstory
I created StratusForms because I had a client that wanted to migrate off Lotus Notes and into SharePoint, but all their migrated applications had to look the same in SharePoint so that it would be easier on the users. The client didn’t have a budget to purchase a forms solution and they didn’t want to use InfoPath (which is fine, because I really loathe InfoPath). But I get why people like InfoPath. It’s free, business users can create forms, and you can do some cool stuff with it… but… it’s… InfoPath…
Anyway, I decided to take the good parts about InfoPath from a technology standpoint and move them into the Client Side Development world. InfoPath stores your form and data in XML and you can promote your fields in your form to a field in a SharePoint list if you want to. I really like this because you can create complex forms with dozens (hundreds?) of fields but only promote those field to a SharePoint list that you need in your list views. This is much easier to maintain in SharePoint and allows you to create different forms on the same list while only promoting common fields. I like this concept, so what I did with StratusForms is store all your form data in one field in a SharePoint list as a JSON object. Doing this really opened the world of form creation.
Using this concept, I created StratusForms. You can now create extremely complicated (or very simple) forms that can look exactly how you want them to look. They can have complicated business logic and be mobile friendly. Literally, the limits of creating forms in SharePoint is your limits as a client side developer.
Over the years, I’ve started using StratusForms more and more for projects and making incremental enhancements to it as I go. Just this week I released version 1.5 and it hit me, I’ve never actually blogged about StratusForms.
With StratusForms we’ve been able to migrate clients off of old legacy systems, meet stringent form design requirements, handle strict printing needs, create mobile friendly forms with multilingual support and do it all in less time than it would take building these forms from scratch.
I’m a fan.
Getting Started
The basic steps to get started with StratusForms are as follows:
- Download the source code from https://github.com/mrackley/StratusForms/ and copy it into your Site Assets library (you can use any document library, but the examples assume you put everything in Site Assets)
- Create a list to store your form
- Create a field in this list that is a PLAIN TEXT multiline field called “StratusFormsData”
- Create your form using HTML, CSS, and JavaScript and connect your form to StratusForms using the Initialize function
- Upload your form to a document library in SharePoint
- Add a Content Editor Web Part to any page in SharePoint and link it to your form
- Ta and Da
I recommend going through some of the examples before you create your first form from scratch, and even then when you create your first form from scratch grab the JavaScript for the minimal form example to get started.
I also created following YouTube video to help you guys get started as quickly and easily as possible. The video only scratches the surface of what’s possible though. My hope is to create a series of videos detailing the various features.
Features and benefits of StratusForms
Not all of these features have been documented yet (shame on me), but here is list of just some of the benefits and features of StratusForms.
- Nothing to install, 100% client side code
- Create mobile friendly forms
- Repeating content
- Promote repeating content to a child list
- Form and field level encryption
- Rich text box support
- Digital signatures
- Modern site and pages support
- File attachments as documents in a document library
- Custom field validation
- Load dropdown lists with values from another SharePoint list
- Cascading drop down lists
- PeoplePickers (SharePoint 2013, 2016, and Office 365 Only)
- Multilingual support
- A multitude of helper functions
Is StratusForms really free?
Yes, StratusForms is really free. There is only one scenario where StratusForms is not free. If you intend to package StratusForms in a product/service that you are going to sell, then you need to contact me about commercial pricing. Otherwise, it’s free. You can use it for whatever project you are working on for personal or work purposes. Consulting companies are free to use it on projects for clients. To be absolutely clear, you can use StratusForms and even profit from the work of CREATING forms for StratusForms, you just cannot embed StratusForms into your product that you are selling without a commercial license.
Limitations of StratusForms
As awesome as StratusForms is, there are some current limitations that I have not addressed yet. Those include:
No Visual Editor
Unfortunately, you do have to write your own HTML and CSS to create your forms. There is no built in WYSIWYG form editor. However, you CAN use any HTML editor you want. You can even create your forms in Word and save them as HTML. Just make sure you give each element a unique ID. StratusForms is really meant for client side developers to conquer their forms needs. If you don’t have a client side developer or a budget to hire an awesome consultant (hint hint) to help you with your forms project, then check out some of the various paid forms options for SharePoint like my awesome friends over at Lightning Tools and Skybow.
No Support for Managed Metadata
StratusForms does not currently support Managed Metadata fields. The main reason for this is I haven’t had a need yet. Because this is a free tool, most of the improvements and enhancements occur when there is a need. Is this a showstopper for you? Feel free to contact me about what it would take to get it implemented.
Documentation
There are SO many features baked into StratusForms, and I have just not had time to document them all. I hope to address this in the near future and with the number of projects we are currently doing with StratusForms it is quickly becoming more critical. So, keep an eye out for better documentation in the future.
Do you have a project that could benefit from StratusForms?
PAIT Group offers consulting services around StratusForms. So, whether you need training on StratusForms, paid support, or have a complicated project like migrating off Lotus Notes or InfoPath we can help! Feel free to contact us today for pricing information on our consulting services.
A final word about InfoPath
Let me step on my soapbox for a moment. Stop using InfoPath… stop creating new forms with it… whether you think StratusForms is the biggest piece of garbage in the world or not, just stop using InfoPath. Start planning for the future and find some alternative. InfoPath is NOT designed for the future and won’t work on Modern Sites and Pages in SharePoint (StratusForms will work on Modern Sites and Pages by the way). Support for InfoPath is ending, yes, it’s not for several years, but every minute spent on creating an InfoPath form today will have to be duplicated in the future when you are forced to abandon InfoPath. And if you are betting on some migration tool off of InfoPath? I hate to break it to you, it’s not going to happen. Why on earth do you think Microsoft is giving you so many years to get off InfoPath?? When you come crying to Microsoft years from now that you have 300 forms that need to be migrated off of InfoPath, their response is most likely going to be “We gave you YEARS to get off of InfoPath!” Also, if creating a migration tool were a real possibility then one of the big forms companies like Nintex or K2 would have already created it. Don’t place your hopes and dreams on something that’s not going to happen and don’t invest your future in InfoPath. Start planning now, or you will regret it.
What about PowerApps?
If you are in Office 365 then definitely look at PowerApps. PowerApps has been anointed as the replacement for InfoPath, however it’s not as feature rich and you must be in Office 365 to take advantage of it. It does have some awesome features though.
One final form option
If you have no plans to use Modern Sites in SharePoint Online and all you want to do is change the way your out of the box SharePoint forms look, then I highly suggest you follow the steps on the following blog post to easily change the look of those default SharePoint forms:
Customize your SharePoint Classic Forms without InfoPath
Using the approach in the above blog post you can create an HTML template for how you want your SharePoint form to look, and the script in that blog will move the fields into your template. This has proven to be a wildly popular technique but it only works in SharePoint classic forms.
How can you find out more about StratusForms?
Want to get started with StratusForms? Check out the video above to get a jump-start creating your first form. Also, check out the StratusForms website and download the source code from GitHub. Finally, send me an email at [email protected] and I’ll get you added to your Slack channel where you can engage the StratusForms community. Is StratusForms really the BEST free forms tool for SharePoint? I’d like to think so and I hope you guys find some value in it as well.
Sounds like a great product. Thanks for sharing your tool and knowledge.