Playground for studying design patterns, solid principles, GoF, testing and more with TypeScript

Overview

TypeScript design patterns study

Playground for studying design patterns, solid principles, GoF, testing and more with TypeScript

Index

Introduction

This repo has been created to study design patterns, solid principles, GoF, testing and more with TypeScript.

Folder structure

All topics are in the src folder, separated by they topic. All topic has an README.md file and his sub topics as well.

Running App

To install follow these steps:

Clone the repo

git clone [email protected]:deverebor/typescript-design-patterns-study.git

Enter the repo directory

cd typescript-design-patterns-study

Install the dependencies

npm i

Using the project

Follow these steps:

SOLID

  • npm run start:srp - single responsibility principle
  • npm run start:ocp - open closed principle
  • npm run start:lsp - liskov substitution principle
  • npm run start:isp - interface segregation principle
  • npm run start:dip - dependency inversion principle
  • npm run start:legacy

TestPratice

  • npm run test - test the project
  • npm run test:silent - silent with watch test
  • npm run test:coverage - to generate coverage report

GoF

  • creational
    • Singleton - npm run creational:singleton
    • Builder - npm run creational:builder
    • ProtoType
      • npm run creational:proto-deep - Deep Clone
      • npm run creational:proto-shallow - Shallow Clone
      • npm run creational:proto-js-obj - JS Object Clone
      • npm run creational:proto-js-func - JS Function Clone
    • FactoryMethod - npm run creational:factory
    • AbstractFactory - npm run creational:abstract-factory
  • structural
    • Composite
      • npm run structural:composite-classic - Classic Structure
      • npm run structural:composite-validation - Validation Structure

Initialize the project you want

npm run start:dip

Developer with ❤️‍🔥 by Lucas Souza (@deverebor)

You might also like...

Veroo is a cappuccino delivery app. This application is for the purpose of studying modern interface and animations.

Veroo Veroo is a cappuccino delivery app. This application is for the purpose of studying modern interface and animations. Pleasant, fluid and lively

Jun 12, 2022

"Rectilearn" a tool to make studying less ordinary

This is the repo for the TWT codejam 2022 https://rectilearn.vercel.app/ by Team Rectifiers Our Goal To create a website which helps people to study b

Jun 28, 2022

A free book that talks about design patterns/techniques used while developing with React.

React in patterns 📚 A free book that talks about design patterns/techniques used while developing with React. Book GitBook Web PDF Mobi ePub Translat

Dec 30, 2022

Open Source projects are a project to improve your JavaScript knowledge with JavaScript documentation, design patterns, books, playlists.

Open Source projects are a project to improve your JavaScript knowledge with JavaScript documentation, design patterns, books, playlists.

It is a project I am trying to list the repos that have received thousands of stars on Github and deemed useful by the JavaScript community. It's a gi

Aug 14, 2022

Open source privacy notice design patterns.

Open source privacy notice design patterns.

Design-first privacy notice template The Juro Privacy Notice is an open source project by https://juro.com and https://stefaniapassera.com/. A couple

Nov 10, 2022

These are examples of design patterns for FE projects.

Design Pattern For FE These are examples of design patterns for FE projects. Design Pattern Useds Topic Reference Adaper Tutorialspoint Factory Tutori

Oct 6, 2022

An interpreter for College Board's specified pseudocode for the AP Computer Science Principles Exam.

College Board Pseudocode Interpreter A playground for this interpreter is up on my website. This project is a mostly-functioning interpreter for Colle

Nov 16, 2022

Semantic is a UI component framework based around useful principles from natural language.

Semantic is a UI component framework based around useful principles from natural language.

Semantic UI Semantic is a UI framework designed for theming. Key Features 50+ UI elements 3000 + CSS variables 3 Levels of variable inheritance (simil

Jan 7, 2023

A simple playground to create and test your Katas in Typescript.

Kata Playground TS A simple playground to create and test your Katas in Typescript. A code kata is an exercise in programming which helps programmers

Jan 20, 2022
Owner
Lucas Souza
I love code that's what moves me.❤
Lucas Souza
A SolidJS starter template with solid-labels, solid-sfc and solid-styled

solid-sfc-styled-labels-starter This is a SolidJS starter template for easily setting up solid-sfc, solid-styled and solid-labels. Development Install

Alexis H. Munsayac 9 Mar 25, 2022
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
A testing focused Remix Stack, that integrates E2E & Unit testing with Playwright, Vitest, MSW and Testing Library. Driven by Prisma ORM. Deploys to Fly.io

Live Demo · Twitter A testing focused Remix Stack, that integrates E2E & Unit testing with Playwright, Vitest, MSW and Testing Library. Driven by Pris

Remix Stacks 18 Oct 31, 2022
Learn design patterns through games with TypeScript and Phaser 🕹️

Welcome to Design patterns gamified! I created this repo to teach design patterns through games. Each folder contains a tiny game that demonstrates ho

Paula Santamaría 41 Nov 10, 2022
This is another Express + TypeScript + DDD (Domain Driven Design patterns) + IoC/DI (Inversion of control and Dependency injection) + Primsa ORM + API REST boilerplate.

Express-TS-DDD REST API This is another Express + TypeScript + DDD (Domain Driven Design patterns) + IoC/DI (Inversion of control and Dependency injec

J.D. 6 Nov 3, 2022
The most often-used OOP design patterns in TypeScript

The most often-used OOP design patterns Generating patterns Factory method Abstract factory Builder Prototype Singleton Structural patterns Adapter Br

Rodion 4 Mar 11, 2022
Code Playground is a online application for testing and showcasing user-created and collaborational HTML, CSS and JavaScript code snippets

Code Playground About Code Playground is a online application for testing and showcasing user-created and collaborational HTML, CSS and JavaScript cod

Arshansh Agarwal 5 Dec 17, 2022
Been interested, studying, and developing blockchain security with a Zero Knowledge Proof (ZKP) and create a prototype on the current issue with Philippine's upcoming election. 📥

Implementation of Zero Knowledge Proofs in Cryptographic Voting ?? Reference: Cryptographic Voting – A Gentle Introduction Overview ????‍?? The main i

Karl Joseph Saycon 2 Apr 11, 2022