Skip to main content

Code Typing Practice

Improve your coding speed with syntax-aware typing practice. You can prep realistic datasets through DataKit or convert tables to JSON with TableForge before pasting them into Custom Practice.

JavaScript Hello World

beginner
javascript29 characters
console.log('Hello, World!');

JavaScript Function

beginner
javascript52 characters
function greet(name) {
  return `Hello, ${name}!`;
}

JavaScript Array Methods

intermediate
javascript121 characters
const numbers = [1, 2, 3, 4, 5];
const doubled = numbers.map(n => n * 2);
const sum = numbers.reduce((a, b) => a + b, 0);

Python Hello World

beginner
python22 characters
print('Hello, World!')

Python Function

beginner
python45 characters
def greet(name):
    return f'Hello, {name}!'

Python List Comprehension

intermediate
python110 characters
numbers = [1, 2, 3, 4, 5]
doubled = [n * 2 for n in numbers]
squares = [n ** 2 for n in numbers if n % 2 == 0]

HTML Basic Structure

beginner
html140 characters
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>My Page</title>
</head>
<body>
  <h1>Welcome!</h1>
</body>
</html>

CSS Flexbox

intermediate
css94 characters
.container {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
}

JavaScript Async/Await

advanced
javascript197 characters
async function fetchData(url) {
  try {
    const response = await fetch(url);
    const data = await response.json();
    return data;
  } catch (error) {
    console.error('Error:', error);
  }
}

TypeScript Interface

intermediate
typescript169 characters
interface User {
  id: number;
  name: string;
  email: string;
  isActive?: boolean;
}

const user: User = {
  id: 1,
  name: 'John Doe',
  email: 'john@example.com'
};

React Component

intermediate
javascript161 characters
function Button({ onClick, children }) {
  return (
    <button
      onClick={onClick}
      className="btn-primary"
    >
      {children}
    </button>
  );
}

SQL Query

intermediate
sql160 characters
SELECT users.name, orders.total
FROM users
INNER JOIN orders ON users.id = orders.user_id
WHERE orders.status = 'completed'
ORDER BY orders.total DESC
LIMIT 10;

Python Class

intermediate
python240 characters
class Calculator:
    def __init__(self):
        self.result = 0
    
    def add(self, x, y):
        self.result = x + y
        return self.result
    
    def multiply(self, x, y):
        self.result = x * y
        return self.result

JavaScript Promise

advanced
javascript241 characters
const promise = new Promise((resolve, reject) => {
  setTimeout(() => {
    const success = Math.random() > 0.5;
    if (success) {
      resolve('Operation successful!');
    } else {
      reject('Operation failed!');
    }
  }, 1000);
});

CSS Grid

intermediate
css190 characters
.grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 20px;
  padding: 20px;
}

.grid-item {
  background: #f0f0f0;
  padding: 20px;
  text-align: center;
}