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 June 24, 2025 05:51
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 June 29, 2025 06:55
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 June 28, 2025 23:00
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 June 6, 2025 14:36
`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