Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
67 changes: 67 additions & 0 deletions .claude/rules/coding-guidelines.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
# Coding Guidelines

These guidelines apply regardless of programming language.

## Early Returns

Prefer returning early to reduce nesting. Handle edge cases and error conditions first, then proceed with the main logic.

**Good:**

```javascript
function processItems(items) {
if (!items || items.length === 0) {
return [];
}

// main logic here
return items.map(transform);
}
```

**Avoid:**

```javascript
function processItems(items) {
if (items && items.length > 0) {
// main logic here
return items.map(transform);
} else {
return [];
}
}
```

## Flat Code

Keep code as flat as possible. Avoid deep nesting by using early returns, guard clauses, or extracting logic into separate functions.

**Good:**

```javascript
async function fetchData(url) {
if (!url) return null;

const response = await fetch(url);
if (!response.ok) return null;

return response.json();
}
```

**Avoid:**

```javascript
async function fetchData(url) {
if (url) {
const response = await fetch(url);
if (response.ok) {
return response.json();
} else {
return null;
}
} else {
return null;
}
}
```