Find Internships Post a Project Our Story

Post a Research Project

List your internship for free. No jobs, no paid placements - only genuine research opportunities for students.

01 - About the Project

Klick zum Auswählen / Abwählen

    02 - Requirements

    03 - Location & Duration

    04 - Compensation

    05 - Your Institute

    ⚠️ Submission Guidelines

    • Only genuine research internships - no jobs or commercial placements
    • Projects asking students to pay will be rejected immediately
    • All listings are reviewed before going live (within 48h)
    • Free for researchers and students, always
    const btn = document.getElementById('submitBtn'); const msg = document.getElementById('submitMessage'); const data = { title: document.querySelector('input[placeholder="e.g. Marine Biology Research Assistant"]')?.value?.trim() || '', institution: document.querySelector('input[placeholder="e.g. University of Vienna - Marine Biology Lab"]')?.value?.trim() || '', contact_name: document.querySelector('input[placeholder="Prof. Dr. Jane Smith"]')?.value?.trim() || '', contact_email: document.querySelector('input[placeholder="j.smith@univie.ac.at"]')?.value?.trim() || '', institution_website: document.querySelector('input[placeholder="https://..."]')?.value?.trim() || '', field_main: document.getElementById('mainField')?.value || '', field_specific: typeof selectedFieldsPost !== 'undefined' ? selectedFieldsPost : [], description: document.querySelectorAll('textarea')[0]?.value?.trim() || '', tasks: document.querySelectorAll('textarea')[1]?.value?.trim() || '', student_level: Array.from(document.querySelectorAll('input[type="checkbox"]:checked')).map(c => c.closest('label')?.textContent?.trim()).filter(Boolean), required_fields: document.querySelector('input[placeholder="e.g. Biology, Chemistry, Biochemistry..."]')?.value?.trim() || '', required_skills: document.querySelectorAll('textarea')[2]?.value?.trim() || '', language: document.querySelector('select:not(#mainField)')?.value || 'English (required)', country: document.querySelector('input[placeholder="e.g. Austria"]')?.value?.trim() || '', city: document.querySelector('input[placeholder="e.g. Vienna"]')?.value?.trim() || '', format: document.querySelector('input[name="format"]:checked')?.closest('label')?.textContent?.trim() || 'On-site', start_date: document.querySelectorAll('input[type="date"]')[0]?.value || null, end_date: document.querySelectorAll('input[type="date"]')[1]?.value || null, deadline: document.querySelectorAll('input[type="date"]')[2]?.value || null, is_paid: document.querySelector('input[name="paid"]:checked')?.closest('label')?.textContent?.includes('paid') || false, stipend: document.querySelector('input[placeholder="e.g. €800 / month"]')?.value?.trim() || '', benefits: document.querySelectorAll('textarea')[3]?.value?.trim() || '', lab_description: document.querySelectorAll('textarea')[4]?.value?.trim() || '', }; if (!data.title || !data.institution || !data.contact_email || !data.field_main || !data.country || !data.city) { msg.style.display = 'block'; msg.style.background = '#fde8e8'; msg.style.color = '#e74c3c'; msg.style.borderRadius = '12px'; msg.style.padding = '20px'; msg.style.marginTop = '16px'; msg.innerHTML = '⚠️ Please fill in all required fields (marked with *)'; return; } btn.textContent = 'Submitting...'; btn.disabled = true; const ok = await submitListing(data); if (ok) { msg.style.display = 'block'; msg.style.background = '#d8f3dc'; msg.style.color = '#1a4d35'; msg.style.borderRadius = '12px'; msg.style.padding = '28px'; msg.style.marginTop = '16px'; msg.style.textAlign = 'center'; msg.innerHTML = `
    Your listing has been submitted!

    We will review it within 24 hours.
    You will receive an email when it goes live.

    Thank you for contributing to InternAtlas! `; btn.style.display = 'none'; } else { msg.style.display = 'block'; msg.style.background = '#fde8e8'; msg.style.color = '#e74c3c'; msg.style.borderRadius = '12px'; msg.style.padding = '20px'; msg.innerHTML = '❌ Something went wrong. Please try again.'; btn.textContent = 'Submit for Review →'; btn.disabled = false; } }