JSFiddle - React, Tailwind, and code Playground
by Prathameshsb
HTML
<div class="container">
<textarea id="textInput" placeholder="Type your text here..."></textarea>
<button onclick="checkGrammar()">Check Grammar</button>
<div id="output"></div>
</div>
CSS
body {
font-family: Arial, sans-serif;
margin: 0;
padding: 0;
display: flex;
align-items: center;
justify-content: center;
height: 100vh;
background-color: #f8f8f8;
}
.container {
width: 80%;
}
textarea {
width: 100%;
height: 200px;
padding: 10px;
font-size: 16px;
margin-bottom: 10px;
}
button {
padding: 10px;
font-size: 16px;
cursor: pointer;
}
#output {
margin-top: 10px;
}
JavaScript
function checkGrammar() {
const textInput = document.getElementById('textInput');
const outputDiv = document.getElementById('output');
const text = textInput.value;
const mistakes = findGrammarMistakes(text);
if (mistakes.length === 0) {
outputDiv.innerHTML = '<p>No grammar mistakes found!</p>';
} else {
const outputHTML = `<p>Grammar Mistakes:</p><ul>${mistakes.map(mistake => `<li>${mistake}</li>`).join('')}</ul>`;
outputDiv.innerHTML = outputHTML;
}
}
function findGrammarMistakes(text) {
// This is a basic example; you might replace it with a more sophisticated grammar-checking algorithm.
const dummyMistakes = [
{ pattern: /\btheir\b/gi, explanation: 'Possessive: their vs. there' },
{ pattern: /\byour\b/gi, explanation: 'Possessive: your vs. you\'re' },
{ pattern: /\bits\b/gi, explanation: 'Possessive: its vs. it\'s' }
];
const mistakes = dummyMistakes
.filter(mistake => mistake.pattern.test(text))
.map(mistake => mistake.explanation);
return mistakes;
}