Welcome to my collection of projects written in Nim — a powerful, expressive systems programming language with Python-like syntax and C-level performance.
This repository features a diverse set of projects ranging from algorithms and cryptography to blockchain simulations and system utilities.
An efficient text autocomplete engine using a Binary Search Tree (BST) for fast prefix matching.
A contact manager where names and phone numbers are stored in a BST. Supports insert, search, update, and traversal.
Simulates core blockchain mechanisms:
- Proof of Work (PoW)
- Proof of Stake (PoS) Great for learning how consensus mechanisms work under the hood.
Monitors file content and detects changes using hashing techniques.
Scans folders and detects duplicate files using file hashes.
A collection of classic and modern ciphers implemented in Nim:
- Caesar Cipher
- Vigenère Cipher
- XOR
- Substitution
- ...and more!
Generates cryptographic hash values for text and files (MD5, SHA256, etc.).
Detects similarity between texts using:
- SimHash
- TF-IDF + Cosine Similarity Ideal for checking document overlap and content originality.
Simulates the 3-way TCP handshake process to help understand network connection establishment.
Make sure you have Nim installed.
To run a project:
nim c -r project_name.nim