Skip to content

kostyngricuk/patterns-algorithms-and-data-structures

Repository files navigation

Patterns, Algorithms & Data Structures 🚀

TypeScript JavaScript Docusaurus

A comprehensive collection of the most popular design patterns, algorithms, and data structures implemented in TypeScript. This project serves as both a learning resource and a reference guide for developers looking to master fundamental computer science concepts.

🎯 Overview

This repository contains practical implementations and explanations of:

  • 🏗️ Design Patterns - Creational, Structural, and Behavioral patterns
  • ⚡ Algorithms - Sorting, searching, graph algorithms, dynamic programming, and more
  • 📊 Data Structures - Arrays, linked lists, trees, graphs, heaps, hash tables, and beyond

Each topic includes:

  • ✅ TypeScript implementation with full type safety
  • 📚 Detailed explanations and use cases
  • ⏱️ Time and space complexity analysis
  • 🧪 Comprehensive test cases

🚀 Quick Start

Prerequisites

Installation

# Clone the repository
git clone https://github.com/kostyngricuk/patterns-algorithms-and-data-structures.git

# Navigate to the project directory
cd patterns-algorithms-and-data-structures

# Install dependencies
yarn install

Local Development

# Start the development server
yarn start

This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.

🛠️ Development

Build for Production

yarn build

This command generates static content into the build directory and can be served using any static contents hosting service.

Type Checking

yarn typecheck

Serve Built Site Locally

yarn serve

🚀 Deployment

Using SSH

USE_SSH=true yarn deploy

Using HTTPS

GIT_USER=<Your GitHub username> yarn deploy

If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the gh-pages branch.

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

Development Guidelines

  1. Follow TypeScript best practices
  2. Add unit tests for all implementations
  3. Update documentation accordingly
  4. Ensure code passes linting and type checking

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

📞 Contact


Star this repository if you find it helpful!

Releases

No releases published

Packages

 
 
 

Contributors