Skip to content

Instantly share code, notes, and snippets.

View igordonin's full-sized avatar

Igor Donin igordonin

View GitHub Profile
@ciiqr
ciiqr / zod-optional-null.ts
Last active February 17, 2026 14:36
zod optional/nullable/nullish differences
// zod schema
z.object({
// valid if string or:
optional: z.string().optional(), // field not provided, or explicitly `undefined`
nullable: z.string().nullable(), // field explicitly `null`
nullish: z.string().nullish(), // field not provided, explicitly `null`, or explicitly `undefined`
});
// type
{
@joshbuchea
joshbuchea / semantic-commit-messages.md
Last active February 26, 2026 12:01
Semantic Commit Messages

Semantic Commit Messages

See how a minor change to your commit message style can make you a better programmer.

Format: <type>(<scope>): <subject>

<scope> is optional

Example

import React from 'react';
class TwoWayBindingInput extends React.Component {
state = {
value: this.props.value
};
componentWillReceiveProps(nextProps) {
if (this.state.value !== nextProps.value)
@wojteklu
wojteklu / clean_code.md
Last active February 24, 2026 04:53
Summary of 'Clean code' by Robert C. Martin

Code is clean if it can be understood easily – by everyone on the team. Clean code can be read and enhanced by a developer other than its original author. With understandability comes readability, changeability, extensibility and maintainability.


General rules

  1. Follow standard conventions.
  2. Keep it simple stupid. Simpler is always better. Reduce complexity as much as possible.
  3. Boy scout rule. Leave the campground cleaner than you found it.
  4. Always find root cause. Always look for the root cause of a problem.

Design rules

@JamesMGreene
JamesMGreene / gitflow-breakdown.md
Last active January 29, 2026 10:49
`git flow` vs. `git`: A comparison of using `git flow` commands versus raw `git` commands.

Initialize

gitflow git
git flow init git init
  git commit --allow-empty -m "Initial commit"
  git checkout -b develop master

Connect to the remote repository