It is a really simple bookmark chrome extension app to figure out how to develop chrome extensions. Chrome Extensions are made of three parts - background script, content script, and options page. My work is mostly focused on background script and content script.
- React
- TailwindCSS
- Lerna
- Typescript
- Parcel
I took an object-oriented approach to handle the background script. When it receives CRUD requests on bookmarks or iframe events, it processes those events.
I used an iframe element to inject my script into any web page. It uses React, Tailwind.
I added shared constants and interfaces in this package.
These are blog posts I wrote while working on this project.
- Using Lerna to manage my project in a Mono Repo way
- Using iframe with React Portal to isolate my component
- Using iframe as a root of my React App with createPortal and functional components
- How to retrieve favicon of websites(easiest way)
- Using React Context to remove prop drilling
- How I used Tailwind CSS transition
git clone https://github.com/hayoung0Lee/my-bookmark.git
npm install -g lerna
yarn boostrap
yarn start # start in dev mode
# go to chrome://extension
# Load unpacked