Projects

NFT MarkETHplace

MERN
Full Stack
Custom Framework
CDD
MetaMask
CoinGecko

A fullstack web app that allows user to login (via a form or MetaMask Wallet) add their favorite NFTs to cart, and checkout. Shows you the current cryptocurrency prices using coin gecko api.

Current cryptocurrency prices on the left, active cart on the right, and user browsing the nft marketplace in middle

Background/Description

Context: In unit 3 of our boot camp, we shifted our focus back to front-end development. This unit marked our introduction to a game-changing library, React. The transition from manipulating the DOM manually in unit 1 to working with React’s abstractions was a significant shift that offered a more efficient and enjoyable development experience.

Process/Insights:

  • Understanding React’s Internals: To use React effectively, it was crucial to understand what happens under the hood. React’s abstraction is a double-edged sword; it simplifies development, but without a deeper understanding, it can lead to more bugs. To tackle this challenge, I focused on breaking down the flow of data in React. I asked questions like when do certain hooks run, what triggers a render, how does state change affect the application, and are there any side effects? These are the questions I constantly asked myself when developing with React.

  • Project Migration Challenge: As part of this unit, I was presented with a challenging task: migrating an existing application developed with Create-React-App to a custom framework. This project not only tested my React knowledge but also pushed me to apply my understanding of React’s internals in a real-world scenario. To succeed in this project ( and in future ones ), I recognized the importance of having a strong grasp of the fundamental tools that power most modern web development frameworks. I delved deep into understanding the roles of three crucial tools: Babel, for transpiling, Gulp, for automating, and Webpack, for bundling.

Key Takeaways:

  • Promoting reusability and maintainability of code with Component-Driven Development

  • React’s internal workings: components lifecycle, state management, side effects.

  • Real-world project experience, like migrating applications to custom frameworks, tests and reinforces knowledge.

  • Proficiency in Babel, Gulp, Webpack makes it easier to adapt when learning new frameworks, as the core principles remain consistent across different technologies.

Projects