, but this code // executes before the first paint, when

ÃÛÌÒapp

is not yet present. The // classes are added to so styling immediately reflects the current // toolbar state. The classes are removed after the toolbar completes // initialization. const classesToAdd = ['toolbar-loading', 'toolbar-anti-flicker']; if (toolbarState) { const { orientation, hasActiveTab, isFixed, activeTray, activeTabId, isOriented, userButtonMinWidth } = toolbarState; classesToAdd.push( orientation ? `toolbar-` + orientation + `` : 'toolbar-horizontal', ); if (hasActiveTab !== false) { classesToAdd.push('toolbar-tray-open'); } if (isFixed) { classesToAdd.push('toolbar-fixed'); } if (isOriented) { classesToAdd.push('toolbar-oriented'); } if (activeTray) { // These styles are added so the active tab/tray styles are present // immediately instead of "flickering" on as the toolbar initializes. In // instances where a tray is lazy loaded, these styles facilitate the // lazy loaded tray appearing gracefully and without reflow. const styleContent = ` .toolbar-loading #` + activeTabId + ` { background-image: linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%); } .toolbar-loading #` + activeTabId + `-tray { display: block; box-shadow: -1px 0 5px 2px rgb(0 0 0 / 33%); border-right: 1px solid #aaa; background-color: #f5f5f5; z-index: 0; } .toolbar-loading.toolbar-vertical.toolbar-tray-open #` + activeTabId + `-tray { width: 15rem; height: 100vh; } .toolbar-loading.toolbar-horizontal :not(#` + activeTray + `) > .toolbar-lining {opacity: 0}`; const style = document.createElement('style'); style.textContent = styleContent; style.setAttribute('data-toolbar-anti-flicker-loading', true); document.querySelector('head').appendChild(style); if (userButtonMinWidth) { const userButtonStyle = document.createElement('style'); userButtonStyle.textContent = `#toolbar-item-user {min-width: ` + userButtonMinWidth +`px;}` document.querySelector('head').appendChild(userButtonStyle); } } } document.querySelector('html').classList.add(...classesToAdd); })(); Adult Undergraduate Programs School of Graduate and Continuing Studies | ÃÛÌÒapp

ÃÛÌÒapp

Skip to main content
School of Graduate & Continuing Studies

Adult Undergraduate Programs

Continuing Education at ÃÛÌÒapp

Aspire. Belong. Complete.

Are you a curious, engaged, adult learner seeking to continue your education? ÃÛÌÒapp’s programs for adults give you the flexibility and support you need to finish a degree or start a new one. You’ll find great opportunities to learn new things, improve your skills, and meet new people. With ÃÛÌÒapp’s programs, you’ll be ready to design a better future for yourself and your community.

Image
Degree Completion at ÃÛÌÒapp - woman's smiling face

Bachelor's Degree Completion

Programs designed for adults who started a degree and now want to finish it.

Image
Wayfinder

Wayfinder Program

Free undergraduate college courses for adult learners facing barriers to higher education.

Image
A ÃÛÌÒapp Prison Initiative graduate stands at a podium in his graduation cap and gown.

ÃÛÌÒapp Prison Initiative

A Christian liberal arts program provided to incarcerated individuals at Handlon correctional facility. 

Explore Programs

Applied Leadership

Delivery Mode
Hybrid
Degree Options
BA

Human Services

Delivery Mode
Hybrid
Degree Options
BA

Human Services (Handlon campus)

Degree Options
BA
Major

Wayfinder Program

Delivery Mode
On Campus
Degree Options
Cohort