General Writing Course: Task 1

Types of Letter

In this lesson, we will cover three types of IELTS letter writing.

What Type of Letter Will You Write?

Formal Letter

To: Banks, companies, officials

Tone: Professional & respectful

Common in IELTS

Semi-Formal

To: Neighbors, landlords, colleagues

Tone: Polite but friendly

Tricky!

Informal Letter

To: Friends & family

Tone: Casual & conversational

Easiest

Letter Writing Guide

// Enhanced showLetterDetails function with auto-scroll function showLetterDetails(type) { const detailsDiv = document.getElementById(‘letter-details’); const contentDiv = document.getElementById(‘details-content’); // First update the content detailsDiv.style.display = ‘block’; let content = ”; if (type === ‘formal’) { content = `

Formal Letter Guide

When to use: Official communications (banks, companies, government)

Key Features:

  • Greeting: “Dear Sir/Madam” or “Dear [Title] [Last Name]”
  • Tone: Professional, respectful
  • Language: No contractions (use “cannot” not “can’t”)
  • Sign-off: “Yours faithfully,” (if name unknown) or “Yours sincerely,” (if name known)
`; } else if (type === ‘semi-formal’) { content = `

Semi-Formal Letter Guide

When to use: Acquaintances, neighbors, landlords, colleagues

Key Features:

  • Greeting: “Dear [Mr./Ms. Last Name]”
  • Tone: Polite but friendly
  • Language: Some contractions acceptable
  • Sign-off: “Kind regards,” or “Best wishes,”
`; } else { content = `

Informal Letter Guide

When to use: Friends, family members

Key Features:

  • Greeting: “Dear [First Name]” or “Hi [First Name]”
  • Tone: Casual, conversational
  • Language: Contractions, idioms acceptable
  • Sign-off: “Best regards,” “Cheers,” or “Love,”
`; } contentDiv.innerHTML = content; // Then smoothly scroll to the guide section const letterGuide = document.getElementById(‘letter-details’); letterGuide.scrollIntoView({ behavior: ‘smooth’, block: ‘start’ }); // Optional: Highlight the section temporarily letterGuide.style.transition = ‘box-shadow 0.5s ease’; letterGuide.style.boxShadow = ‘0 0 0 3px rgba(52, 152, 219, 0.5)’; setTimeout(() => { letterGuide.style.boxShadow = ‘none’; }, 1500); } // [Rest of your existing JavaScript functions…] // showExample(), drag-and-drop functions, letter builder functions, etc.

🎯 Letter Purpose Matching Game

Drag each scenario to the correct function category

Scenarios

Borrowed friend’s car and had accident
Want to borrow friend’s vehicle
Having a party for classmate
Neighbor plays music too loud
Teacher helped with IELTS score

Functions

Complaint
Request
Gratitude
Invitation
Apology

✍️ Interactive Letter Builder

Letter Settings

Formal Semi-Formal Informal

Live Preview

🏆 Practice Challenge

Write a formal complaint letter about poor hotel service (150 words minimum)

Prompt: You recently stayed at a hotel and were unhappy with the service. Write to the manager:

  1. Describe your stay
  2. Explain why you were unhappy
  3. Suggest improvements

Formal Letter Tips:

  • Use “Dear Sir/Madam” if name unknown
  • State purpose clearly in first paragraph
  • Use polite but firm language
  • End with “Yours faithfully” (no name) or “Yours sincerely” (with name)
// Show letter type details function showLetterDetails(type) { const detailsDiv = document.getElementById(‘letter-details’); const contentDiv = document.getElementById(‘details-content’); detailsDiv.style.display = ‘block’; let content = ”; if (type === ‘formal’) { content = `

Formal Letter Guide

When to use: Official communications (banks, companies, government)

Key Features:

  • Greeting: “Dear Sir/Madam” or “Dear [Title] [Last Name]”
  • Tone: Professional, respectful
  • Language: No contractions (use “cannot” not “can’t”)
  • Sign-off: “Yours faithfully,” (if name unknown) or “Yours sincerely,” (if name known)
`; } else if (type === ‘semi-formal’) { content = `

Semi-Formal Letter Guide

When to use: Acquaintances, neighbors, landlords, colleagues

Key Features:

  • Greeting: “Dear [Mr./Ms. Last Name]”
  • Tone: Polite but friendly
  • Language: Some contractions acceptable
  • Sign-off: “Kind regards,” or “Best wishes,”
`; } else { content = `

Informal Letter Guide

When to use: Friends, family members

Key Features:

  • Greeting: “Dear [First Name]” or “Hi [First Name]”
  • Tone: Casual, conversational
  • Language: Contractions, idioms acceptable
  • Sign-off: “Best regards,” “Cheers,” or “Love,”
`; } contentDiv.innerHTML = content; } // Show letter examples function showExample(type) { const contentDiv = document.getElementById(‘details-content’); let example = ”; if (type === ‘formal’) { example = `

Dear Sir/Madam,

I am writing to express my dissatisfaction with the service I received at your hotel during my recent stay from June 1-3, 2023.

The room was not cleaned properly, and the air conditioning was not functioning. Furthermore, the staff were unresponsive to my complaints.

I would appreciate a refund for one night’s stay and assurance that these issues will be addressed for future guests.

Yours faithfully,
Robert Johnson

`; } else if (type === ‘semi-formal’) { example = `

Dear Mr. Thompson,

I hope this letter finds you well. I’m writing about the noise coming from your apartment late at night.

While I understand everyone needs to relax, the music after 11pm makes it difficult to sleep. Could we agree on quiet hours after 10:30pm?

I’d appreciate your cooperation on this matter. Please let me know if you’d like to discuss this in person.

Kind regards,
Sarah Williams

`; } else { example = `

Hi Maria,

Guess what? I finally moved into my new house last weekend! It’s been crazy unpacking everything.

The house has 3 bedrooms and a small garden – perfect for the dog! The neighborhood seems friendly too, with a park just down the street.

You should come visit next month! I’ll send you directions and you can stay in the guest room.

Best,
Sophie

`; } contentDiv.insertAdjacentHTML(‘beforeend’, example); } // Drag and drop functions for matching game function allowDrop(ev) { ev.preventDefault(); } function drag(ev) { ev.dataTransfer.setData(“text”, ev.target.dataset.function); } function drop(ev) { ev.preventDefault(); const data = ev.dataTransfer.getData(“text”); const targetFunction = ev.target.dataset.function; if (data === targetFunction) { ev.target.style.backgroundColor = ‘#e8f8f5’; ev.target.innerHTML += `
✓ Correct!
`; document.getElementById(‘game-feedback’).innerHTML = ‘Well done! That’s the right category.’; document.getElementById(‘game-feedback’).style.color = ‘#2ecc71’; } else { ev.target.style.backgroundColor = ‘#fdedec’; ev.target.innerHTML += `
✗ Try again
`; document.getElementById(‘game-feedback’).innerHTML = ‘Not quite right – try another category!’; document.getElementById(‘game-feedback’).style.color = ‘#e74c3c’; } } // Letter builder functions function updateLetterPreview() { const type = document.getElementById(‘letter-type’).value; const recipient = document.getElementById(‘recipient-name’).value || ‘[Recipient]’; const yourName = document.getElementById(‘your-name’).value || ‘[Your Name]’; let greeting, signOff; if (type === ‘formal’) { greeting = recipient.includes(‘ ‘) ? `Dear ${recipient},nn` : `Dear Sir/Madam,nn`; signOff = `Yours ${recipient.includes(‘ ‘) ? ‘sincerely’ : ‘faithfully’},n${yourName}`; } else if (type === ‘semi-formal’) { greeting = `Dear ${recipient.split(‘ ‘)[0]},nn`; signOff = `Kind regards,n${yourName}`; } else { greeting = `Hi ${recipient},nn`; signOff = `Best,n${yourName}`; } const preview = `${greeting}[Start your letter here. Explain the purpose in the first paragraph.]nn[Add details in this paragraph.]nn[Conclude your letter here.]nn${signOff}`; document.getElementById(‘letter-preview’).textContent = preview; } function generateFullLetter() { const type = document.getElementById(‘letter-type’).value; const recipient = document.getElementById(‘recipient-name’).value || ‘[Recipient]’; const yourName = document.getElementById(‘your-name’).value || ‘[Your Name]’; alert(`Custom ${type} letter template generated! Scroll up to see it in the preview box.`); updateLetterPreview(); } function showLetterTips() { document.getElementById(‘letter-tips’).style.display = ‘block’; } // Initialize updateLetterPreview();