partialCallbacks = {}; copyText = (text, message, alert) => { navigator.clipboard.writeText(text).then(() => { (alert !== false) && $alert.notify({ type: 'success', title: 'Clipboard', message: (message || 'Text copied to clipboard.'), toast: true, }); }); }; share = (details) => navigator.share($utilities.deepCopy(details)); comingSoon = () => { $alert.notify({ type: 'info', title: 'Feature coming soon', message: 'This feature is currently not available.', toast: true, }); }; transformPathwayOptions = (options) => { let transformed = []; (options || studyProvinces).forEach((item) => { let shareKey = ''; for (let i = 0; i < item.name.length; i++){ shareKey = item.name.at(i); if (shareKey == ' '){ continue; } shareKey = shareKey.toLowerCase(); if (transformed.length == 0 || !transformed.find(opt => opt.share_key === shareKey)){ break; } } transformed.push({ share_key: shareKey, label: item.name, }); }); return transformed; }; studyProvinces = [ { name: 'Alberta', is_good: true, }, { name: 'British Columbia', is_good: false, }, { name: 'Manitoba', is_good: true, }, { name: 'New Brunswick', is_good: true, }, { name: 'Newfoundland and Labrador', is_good: true, }, { name: 'Northwest Territories', is_good: false, }, { name: 'Nunavut', is_good: false, }, { name: 'Ontario', is_good: false, }, { name: 'Prince Edward Island', is_good: true, }, { name: 'Quebec', is_good: false, }, { name: 'Saskatchewan', is_good: true, }, { name: 'Yukon', is_good: false, }, ]; prOccupations = [ { name: 'French-language proficiency', show: false, }, { name: 'Healthcare occupations', show: true, }, { name: 'Science, Technology, Engineering and Math (STEM) occupations', show: true, }, { name: 'Trade occupations', show: true, }, { name: 'Transport occupations', show: true, }, { name: 'Agriculture and Agri-food occupations', show: true, }, ];
const title = ({"value":"Predictive Calculator"}).value; document.title = `${title} | Shirah`;

Ready to explore your options?

Here’s a quick look at all the pathways we offer. Whether you’re dreaming of studying, working, or reuniting with family in Canada, we’ve got you covered. Just click on the pathway that interests you to learn more.

Study in Canada

Explore your pathway to studying at your school of choice in Canada

Learn more arrow_right_alt

Become a Permanent Resident

Discover the best path to gaining your Permanent Residency in Canada

Learn more arrow_right_alt

Visit Canada

Coming to Canada? Prepare all the documents you need to ensure you are ready

Learn more arrow_right_alt

Start/move your business

Discover all you need to start or expand your business to Canada

Learn more arrow_right_alt

Sponsor your family

Sponsor a family member, ward or loved one to Canada

Learn more arrow_right_alt

Work Permit

Get your work permit to work in Canada

Learn more arrow_right_alt

Others

Explore more of our services and products

Coming soon arrow_right_alt

Join our newsletter

Be the first to access valuable insights, updates on immigration policies, and exclusive tips for a successful journey to Canada

checkpoint = 0; target = document.querySelector('#modal-mount'); targetParent = target.parentElement; targetParent.style.display = 'none'; setVisible = (show) => { if (show != isVisible){ isVisible = show; targetParent.style.display = (show ? 'flex' : 'none'); $$class(document.body).toggleOn(show, 'overflow-hidden'); } if (show && duration){ const cp = ++checkpoint; window.setTimeout(() => cp == checkpoint && hide(), duration); } }; init = (options) => { options = options || {}; disableParentClick = options.disableParentClick || false; duration = options.duration || 0; ++checkpoint; !options.hidden && show(); }; show = () => setVisible(true); hide = () => setVisible(false); toggleVisible = () => setVisible(!isVisible); onEntered = () => { aIndex = 0; loading = true; target.style.display = 'none'; show(); }; onLoad = () => { loading = false; target.style.display = 'flex'; }; onReload = () => onLoad(); $event.target === targetParent && !disableParentClick && hide();
show = false; show = false; show = !show; if (show && !$static(shown)){ shown = true; $nextTick(() => $refs.menu.focus()); } else{ shown = false; }

Sign in to access this feature

if ($event.detail.data && $event.detail.data.otp){ otpEmail = $event.detail.data.email; $router.goto('HvHryruVwditYww1Zu19://otp'); } else{ window.location.href = ({"value":"\/headed\/objects"}).value; }
onProgress = (progress, isComplete) => { percentage = $rel.lt(progress, 1) ? progress * 100 : 100; if (isComplete && isActive){ const chkpt = (checkpoint = (checkpoint || 0) + 1); window.setTimeout(() => (chkpt === checkpoint && (isActive = false)), 500); } else if (!isComplete && !isActive){ isActive = true; } };
onLoad = () => { $resource.getStyle('/headless/client/static/css/visible-material-symbols.css'); };