Typescript Practice
April 3, 2026 · View on GitHub
Repository created to record my practice learning React with exercises based on the Udemy Course of Maximilian Schwarzmüller.
Table of contents
- Status
- Requirements
- Setup
- How to run it
- Repo structure & what i learned in each exercise
- Other practice repos
Status
- Current repo's version is
- This course has been completed on 28/12/2022 - Certificate
Why does it not have any updated dependencies?
After finishing its related Udemy course, I archive this repository and unarchive it when I start a new training and add a link in the Other practice repos section referring to its new repo. But I don't update any associated dependency due to technology changes during the years between each practice, and the produced code which works with the mentioned requirements.
Requirements
- Node
v16.13.2or above
Setup
After cloning the repo, go to the created folder and install the node packages.
git clone https://github.com/NicolasOmar/typescript-practice.git
cd typescript-practice
npm run setup-all
setup-all is the command to install all the projects, but if you want to do it one by one, you can change that last line for one of the following:
| App Setup | Command |
|---|---|
| All | npm run setup-all |
| Basics | npm run setup-basics |
| Configs | npm run setup-configs |
| Classes, Interfaces & Types | npm run setup-classes |
| Generics & Decorators | npm run setup-generics |
| Practice Demo #1 | npm run setup-drag-and-drop |
| Practice Demo #2 | npm run setup-select-and-share |
| React & Node | npm run setup-react-and-node |
How to run it
To run any specific exercise, execute the following command in the project´s folder:
npm start
Repo structure & what I learned in each exercise
- Basics (
1-basicsfolder)- Create, code, and compile a
.tsfile into JavaScript. - Understanding of
Core Typeslikenumber,string,boolean,array, andobject. - Understanding of
Tuples,Enums,Union, andLiteral/CustomTypes. - Understanding of
void,undefined,unknown, andneverTypes.
- Create, code, and compile a
- Configs (
2-configsfolder)- Adding
watch modeto maintain updated changes and check possible errors beforehand. - Create a typescript configuration file with
tsc --initand tweak for a custom config. - Understand how Typescript compiles ES6+ code (like
let/const,arrow functions,default function parameters,spread operator, anddestructuring).
- Adding
- Classes, Interfaces & Types (
3-classes-interfaces-typesfolder)- Basic understanding of
Classescreation with its properties and methods. - Know the difference between a
public,private, andprotectedproperty. - Basic understanding of
class inheritance. - How to use
gettersandsetters. - How to use
static methods. - Basic understanding of
Interfacesand their implementation onClassesand otherInterfaces. - Understanding and implementation of
Intersection Types,Type Guards,Discriminated Unions,Type CastingandFunction Overloads.
- Basic understanding of
- Generics & Decorators (
4-generics-decoratorsfolder)- Basic understanding og
Generic Types. - How to use multiple generic types in a function.
- Understanding and implementation of
extendsandkeyof. - Understanding and implementation of utilities like
PartialandReadonly. - Basic understanding of
Decorators. - How to implement a template creation and setting by using a
Decorator Factory. - Ways of implementing decorators such as
Properties,Set,Methods, andParameters.
- Basic understanding og
- Practice Demo #1 (
5-drag-and-dropfolder)- Review of all concepts mentioned above.
- Understanding and implementing a drag-and-drop event (from one point to the other).
- How to split code using
namespacesand solve its possible problems withES6 modules. - Basic understanding and implementation of
Webpack(configuration for development and production environments).
- Practice Demo #2 (
6-select-and-sharefolder)- Use Google GeoCoding API to get information from places.
- Use Axios to make API calls.
- How to use Javascript-based libraries in Typescript by using
@types/[LIBRARY_NAME](in this case, using googlemaps types).
- React & Node (
7-react-and-nodefolder)- How to create a React project with Typescript installed using create-react-app.
- How to use React features such as
useState,functional componentsandpropswith TS. - How to compile work with Typescript in Node with tsc and nodemon.
- How to use Express features such as
RoutesandResquestswith TS.
Other practice repos
| Node | React | Angular | GraphQL | HTML & CSS | Styling | NextJS | Python | NestJS |
|---|---|---|---|---|---|---|---|---|