# Internship Project: Improve Form Creation Experience in ODK-X Application Designer

**URL:** <https://forum.odk-x.org/t/internship-project-improve-form-creation-experience-in-odk-x-application-designer/1194>\
**Category:** Community\
**Tags:** gsoc, internship-project, gsoc-2021\
**Created:** [March 11, 2021, 2:13am UTC](https://forum.odk-x.org/t/internship-project-improve-form-creation-experience-in-odk-x-application-designer/1194 "2021-03-11T02:13:57Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Jeff\_Beorse](https://odkx.b-cdn.net/user_avatar/forum.odk-x.org/jeff_beorse/32/2_2.png) [@Jeff\_Beorse](https://forum.odk-x.org/u/Jeff_Beorse)\
**Post date:** [March 11, 2021, 2:13am UTC](https://forum.odk-x.org/t/internship-project-improve-form-creation-experience-in-odk-x-application-designer/1194/1 "2021-03-11T02:13:57Z")

</div>

Welcome prospective [Google Summer of Code](https://summerofcode.withgoogle.com/) participants! Check out our DIAL [Sub-Org page](https://hub.osc.dial.community/t/gsoc-2021-dial-open-source-center/2134#odk-x) and our [main thread](https://forum.odk-x.org/t/welcome-gsoc-applicants/1195). Please discuss your ideas for the Improve Form Creation Experience in ODK-X Application Designer project here or in the project [slack channel](https://odk-x.slack.com/archives/C01QF5WFFQX).

**Introduction**  
ODK-X Application Designer is a Node.js program that provides an environment for creating and testing XLSX forms for ODK-X Survey. It is composed of components written in JavaScript. It has a command line interface with a Grunt frontend and a graphical interface with a browser frontend. At the core of ODK-X Application Designer is the XLSX Converter, which takes an XLSX form and compiles it to a set of files that are machine readable.

ODK-X Application Designer is a key tool for compiling and testing forms but it lacks features that help form designers create maintainable forms. In this project we’d like to add features to improve the form designer’s productivity. This tool will parse the machine readable form representation (formDef.json) and write changes to the XLSX form. Think of the tools like a formatter for XLSX forms. Examples of features for this tool include:

- Color code if clauses
- Color code begin screen clauses
- Remove unused choices
- Copy choice and model sheets across forms

**Github** : [Application Designer Project](https://github.com/odk-x/app-designer/) and [Issue Queue](https://github.com/odk-x/tool-suite-X/issues)  
**Skills** : JavaScript, Node.js  
**Difficulty** : Medium to Hard  
**Mentors** : @linl33, @W_Brunette, @Vyankatesh, @dexter21
