There’s an older (circa 2007) application questions module still in the codebase. This documentation covers the newer Formstack integration, which is the recommended approach.
Overview
The application system uses Formstack, a third-party form builder, as the backend for creating and collecting application responses. The ESP Website integrates with Formstack to:- Display application forms to students
- Link applications to student accounts and classes
- Provide review interfaces for teachers and admins
- Track application statuses and decisions
Required Program Modules
Enable these modules for your program:FormstackAppModule
Student-facing module that embeds the Formstack application form.Students access it at
/learn/[program]/[instance]/studentappTeacherAdmissionsDashboard
Teacher interface to review applications for their classes.Teachers access it at
/teach/[program]/[instance]/admissionsFormstack Form Setup
Creating the Application Form
In Formstack, create an application form with the following required fields:Username Field
Username Field
Type: Text fieldConfiguration:
- Mark as required
- Mark as read-only
- Will be pre-populated by the website when user is logged in
- Used to link applications with ESP accounts
Class Choice Fields
Class Choice Fields
Type: DropdownConfiguration:The option value is the class’s numeric ID in the ESP database.
- One dropdown for each class selection slot
- Each dropdown asks “Which class are you applying to?”
- Options: One for each class in the program
- Use separate values: Check this option
- Option values: Enter each class’s ID number from the ESP Website
- Links applications to specific classes
Additional Fields
Add any other fields you want:- Why are you interested in this class?
- What relevant experience do you have?
- Demographic information
- Open-ended questions
- Multiple choice or rating scales
Configuring the Webhook
Formstack needs to notify the ESP Website when applications are submitted.Add Webhook
Add a webhook with this URL:Replace
WEBSITE_URL with your site:esp.mit.edustanfordesp.orgsplashchicago.learningu.org- etc.
Webhooks create a live connection between Formstack and your ESP Website. Every form submission is automatically recorded in your database.
ESP Website Configuration
After creating the Formstack form, configure the ESP Website integration:Formstack App Settings
Navigate to/admin/application/formstackappsettings/ and find your program.
Enter API Key
- Get your Formstack API key (v1) from your Formstack account
- Enter it in the “Formstack API key” field
- Click “Save and continue editing”
Select Form
- A list of forms connected to your account will appear
- Enter the form ID number for your application form
- Click “Save and continue editing”
Map Fields
- A list of questions in your form will appear
- Enter field ID numbers for:
- Username field: Links applications to accounts
- Core class fields: Links applications to classes
- These field IDs come from Formstack
Create Teacher View Template
Enter HTML template for what teachers see when viewing applications.Use template variables to include student responses:
{{ field_XXXXX }}- Replace XXXXX with field ID{{ username }}- Student’s username{{ student_name }}- Student’s name
Opening Applications
Applications are initially closed to prevent students from seeing the form before you’re ready.Test as Admin
- Visit
/learn/[program]/[instance]/studentapp - Verify the form appears correctly
- Check that username is pre-filled
- Edit the page content (editable text area) as desired
Open to Students
- Return to
/admin/application/formstackappsettings/ - Check “App is currently open”
- Save
- The “Continue” button becomes visible to all users
Student Workflow
How students experience the application process:Access Application Page
Student visits
/learn/[program]/[instance]/studentappSees editable content explaining the application processComplete Form
Student:
- Selects classes from dropdowns
- Answers all questions
- Submits the form on Formstack
Admin Workflow
How administrators review and manage applications:Accessing the Dashboard
Visit/manage/[program]/[instance]/admissions
You’ll see:
- Dropdown menu to select classes
- Large table with applications and columns for review
Reviewing Applications
Select a Class
Use the dropdown menu to choose which class’s applications to viewAll applicants for that class appear in the table
View Application
Click on a student’s nameApplication opens in a new window, formatted according to your “teacher view template”
Set Admin Status
Change the student’s “admin status” in the table:
- Approved: Application approved by admin; visible to teacher
- Rejected: Application not approved
- Pending: Under review
- Other custom statuses
Add Comments
Click “(click to add comment)” under admin commentDialog appears for entering notes about the application
Teachers can only see applications with admin status set to “Approved”. Use this to control which applications teachers review.
Teacher Workflow
How teachers review applications for their classes:Accessing Applications
Visit/teach/[program]/[instance]/admissions
Interface similar to admin view but with:
- Fewer columns in the table
- Blank pane on the right side
- Only shows approved applications
Reviewing and Rating
Rate Student
Change student’s “Rating”:
- Green
- Yellow
- Red
- None
Teacher Review of Class Applications
If using the TeacherReviewApps module, teachers can create optional application questions for their individual classes.- Questions are optional for teachers to create
- Once created, questions become required for students applying to that class
- Used in conjunction with StudentJunctionAppModule
Application Status Workflow
Typical progression:Integration with Registration
Applications complement the standard registration modules:Application-Only Programs
Application-Only Programs
Programs where students apply for general admission:
- Enable FormstackAppModule
- Students complete application
- Admins review and approve
- Approved students gain access to regular registration
Class-Specific Applications
Class-Specific Applications
Programs where students apply to individual classes:
- Enable StudentClassRegModule (for browsing catalog)
- Enable FormstackAppModule
- Students see catalog but apply rather than register directly
- Teachers/admins review applications
- Admitted students are enrolled
Hybrid Approach
Hybrid Approach
Some classes require applications, others are open enrollment:
- Use applications for selective classes
- Regular registration for non-selective classes
- Students can do both during registration period
Custom Forms Alternative
While Formstack is the recommended backend, the system is designed to potentially support other backends including:- Custom forms built into the ESP Website
- Other third-party form services
Best Practices
Form Design
Test thoroughly
Submit test applications to verify:
- Username pre-population works
- Class dropdowns are correct
- Webhook fires and records to database
- Teacher view displays properly
Review Process
- Set expectations with teachers: Explain the rating system and timeline
- Review regularly: Don’t let applications pile up
- Communicate decisions: Email students about admission status
- Track in spreadsheet: Export data from Formstack for additional analysis if needed
Timeline
Troubleshooting
Username field not pre-filling
Username field not pre-filling
Check:
- Field is marked as read-only in Formstack
- Student is logged in when accessing the application
- Formstack form ID is correct in settings
Applications not appearing in database
Applications not appearing in database
Verify:
- Webhook is configured correctly in Formstack
- Webhook URL matches your site
- Username field and class field IDs are mapped correctly
- Check Django logs for webhook errors
Teachers can't see applications
Teachers can't see applications
Ensure:
- Admin status is set to “Approved”
- TeacherAdmissionsDashboard module is enabled
- Teacher is associated with the class
Template not displaying responses
Template not displaying responses
Check:
- Field ID variables match Formstack field IDs exactly
- HTML template is valid
- Field IDs are entered in settings correctly
Financial Aid via Formstack
The same system can be used for financial aid applications:- Create separate Formstack form for financial aid
- Configure in the financial aid section of FormstackAppSettings
- Similar field mapping process
- Separate teacher view template for financial aid
Getting Help
For application system assistance:Contact: [email protected]Provide:
- Your site URL
- Program name
- Formstack form link
- Description of the issue
- Screenshots if helpful
Next Steps
Program Modules
Learn about all available program modules
Creating Programs
Set up new programs with applications