Skip to content

Instantly share code, notes, and snippets.

View mrajaeim's full-sized avatar
🧙‍♂️
Focusing

Mohammad Rajaei Monfared mrajaeim

🧙‍♂️
Focusing
View GitHub Profile

🔐 Complete Guide to E2E Encryption Concepts

🔑 KEY TYPES & CONCEPTS

1. Identity Key Pair (Long-term Identity)

What it is:

  • Your permanent cryptographic identity in the system
  • Asymmetric key pair (public + private)
  • Like your digital fingerprint/passport
@mrajaeim
mrajaeim / package.md
Created February 18, 2025 19:48 — forked from nurmdrafi/package.md
How to Build and Publish NPM Package Using Rollup, Babel, TypeScript, ESLint, and Jest

🚀 How to Build and Publish NPM Package Using Rollup, Babel, TypeScript, ESLint, and Jest

1. Setup the Project

Create a new directory for your project and initialize it with npm:

mkdir my-package
cd my-package
npm init -y

Conventional Commit Messages

See how a minor change to your commit message style can make a difference. Examples

ℹ️ git-conventional-commits A CLI util to ensure this conventions and generate changelogs

Commit Formats

Default

@mrajaeim
mrajaeim / semantic-commit-messages.md
Created November 30, 2023 07:03 — forked from joshbuchea/semantic-commit-messages.md
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

@mrajaeim
mrajaeim / gql.js
Created October 20, 2023 20:16
How to not delete @client directive for mocking gql from codes in Apollo client!
import { gql as apolloGql } from "@apollo/client";
const gql = (strings, ...keys) => {
if (
process.env.NODE_ENV === "test" ||
process.env.NODE_ENV === "production"
) {
strings = strings.map((str) =>
str.replace(/\@client\s/gi, "").replace(/\s\@client/gi, ""),
);
@mrajaeim
mrajaeim / setup python.md
Created July 3, 2023 09:10 — forked from ersingencturk/setup python.md
Installing Python 3.11 & Rust on Raspberry Pi

Installing Python 3.11 & Rust on Raspberry Pi

Python 3.11 is not available as apt package on debian raspbian bullseye so installing from source needed

updatepython2v11.sh can be used to compile python 3.11 on raspberry pi

installing packages like bcrypt and cryptography needs rust compiling so rust compiler needed if you don't do that you will get error liek this:

Building wheels for collected packages: bcrypt