Skip to content

krishxps/0-100-Mern-Harkirat

Repository files navigation

Learning Journey in Web-Dev and Dev-Ops: Weekly Progress

Projects

PayTM Basic Clone Project

  • Built a PayTM-like application that allows users to send money to each other with an initial dummy balance.

Tech Used

Backend:

  • Express.js
  • MongoDB (via Mongoose)
  • JWT for authentication
  • Zod for validation
  • Axios for making HTTP requests

Frontend:

  • React.js
  • Tailwind CSS

Before Week 1

  • Completed introductory courses on HTML and CSS.
  • Familiarized with basic web design principles.

Weekly Progress


Week 1

  • Learned basic JavaScript concepts.
  • Implemented promises and asynchronous programming.
  • Completed assignments on algorithms (anagram finding, palindrome checking).

Week 1 - Coding Activities

  • 01: Implemented promise chaining for asynchronous file operations.
  • 02: Created a function to find anagrams in a list of words.
  • 03: Developed a script to check if a string is a palindrome.

Week 2

  • Explored Node.js and Express.js.
  • Built servers and defined routes.
  • Implemented middleware for request handling.

Week 2 - Coding Activities

  • 01: Set up a basic Express server.
  • 02: Implemented middleware for logging requests.
  • 03: Built routes for handling different HTTP methods.

Week 3

  • Integrated MongoDB with Node.js.
  • Implemented JWT authentication and authorization.
  • Worked on CRUD operations with databases.

Week 3 - Coding Activities

  • 01: Set up MongoDB integration in a Node.js project.
  • 02: Implemented JWT authentication middleware.
  • 03: Created CRUD operations for managing user data.

Week 4

  • Explored DOM manipulation in JavaScript.
  • Learned server-side rendering with Express.js.
  • Introduced to React.js concepts.

Week 4 - Coding Activities

  • 01: Implemented DOM manipulation scripts using vanilla JavaScript.
  • 02: Explored server-side rendering basics with Express.js.
  • 03: Started building a simple React component.

Week 5

  • Deepened understanding of React.js.
  • Learned about state management with React.
  • Explored React Router for navigation.

Week 5 - Coding Activities

  • 01: Implemented state management using useState hook.
  • 02: Explored component composition in React.
  • 03: Integrated React Router for client-side navigation.

Week 6

  • Advanced React.js concepts like context API.
  • Explored memoization techniques with useMemo.
  • Enhanced understanding of React Router.

Week 6 - Coding Activities

  • 01: Implemented context API for global state management.
  • 02: Used useMemo for performance optimization in React components.
  • 03: Enhanced navigation with nested routes using React Router.

Week 7

  • Continued with advanced React.js topics.
  • Explored practical applications of context API.
  • Implemented more complex React components.

Week 7 - Coding Activities

  • 01: Integrated context API for theming in a React application.
  • 02: Built a complex form component using controlled components.
  • 03: Enhanced component communication using props and context.

Week 8

  • Introduced to Tailwind CSS for styling React applications.
  • Explored responsive design principles.
  • Integrated Tailwind CSS with React components.

Week 8 - Coding Activities

  • 01: Styled React components using Tailwind CSS classes.
  • 02: Implemented responsive design for different screen sizes.
  • 03: Enhanced UI components with a utility-first CSS approach.

Week 9

  • Started Learning TypeScript: Began exploring TypeScript to enhance type safety in JavaScript code.
  • Converted JavaScript Code to TypeScript: Practiced converting existing JavaScript codebases to TypeScript for better type management and error prevention.
  • Explored TypeScript Features: Familiarized with basic and advanced TypeScript features such as interfaces, generics, and type assertions.

Week 9 - Coding Activities

  • 01: Set up a TypeScript project and configured tsconfig.json.
  • 02: Converted a basic JavaScript function to TypeScript, adding types and interfaces.
  • 03: Implemented a simple TypeScript class and used generics to create reusable components.