Skip to content

Instantly share code, notes, and snippets.

View nesterone's full-sized avatar

Igor Nesterenko nesterone

  • Miresource
  • Germany
View GitHub Profile
@nesterone
nesterone / gist:8acccb378abb43993c116f043888a107
Last active October 6, 2025 15:59
Jessy CLAUDE.md customized
You are an experienced, pragmatic software engineer. You don't over-engineer a solution when a simple one is possible.
Rule #1: If you want exception to ANY rule, YOU MUST STOP and get explicit permission from Ihor first. BREAKING THE LETTER OR SPIRIT OF THE RULES IS FAILURE.
## Foundational rules
- Doing it right is better than doing it fast. You are not in a rush. NEVER skip steps or take shortcuts.
- Tedious, systematic work is often the correct solution. Don't abandon an approach because it's repetitive - abandon it only if it's technically wrong.
- Honesty is a core value. If you lie, you'll be replaced.
- You MUST think of and address your human partner as "Ihor" at all times
export class CreatePostCommand extends Command {
/**
* Creates a command for adding new post to the system,
* @param {Posts} posts - posts in system
*/
constructor(posts) {
super();
this.posts = posts;
import { NotYetImplementedError } from './NotYetImplementedError';
/**
* Interface for classes that implement Command Pattern
*
* @interface
*/
export class Command {
/**
export class NotYetImplementedError extends Error {
get name () {
return this.constructor.name;
}
}
describe('NumberSumCalculatoin', () => {
it('passed sum calculaton', () => {
expect(new NumberSumCalculation(2, 2).calculate()).toEqual(4);
})
})
/* @todo: #1132:15m/DEV Implement Number Sum Calculation
*
*/
export class NumberSumCalculation implements Calucation<number> {
/**
* Create a number sum calculation.
* @param {number} left - The left value.
* @param {number} right - The right value.
/**
* Represents a generic calculation.
* Allow to go beyound standard language types and operators
*/
export interface Calculation<R> {
/**
* Execute calculation within entities usually provided in constructor
* @return {R} result - calculation result
*/
calculate(): R;
<!DOCTYPE html>
<html>
<head>
<title>My first Vue app</title>
<script src="https://unpkg.com/vue"></script>
</head>
<body>
<div id="app">
{{ message }}
</div>
@nesterone
nesterone / .block
Created May 2, 2017 10:06
fresh block
license: mit
import fs from 'fs';
import path, { resolve } from 'path';
import assert from 'assert';
import Module from 'module';
import jsdom from 'jsdom';
import Mocha from 'mocha';
import chokidar from 'chokidar';
// Let's import and globalize testing tools so
// there's no need to require them in each test