- Model: Firebase
- View: React
- Controller: React Router
- State management: Redux, redux-thunk
- Styling: styled-components, polished
- Type-checking: TypeScript
- TypeScript: I was fond of JavaScript because how easy and flexible it was, until recently when I work on larger projects
- No more magic code, no more missing properties, wrong arguments and all those unhelpful type
any
. - The best thing is refactoring without hesitation.
- No more magic code, no more missing properties, wrong arguments and all those unhelpful type
- CSS:
clip-path
enables more unique designs.- Flipping cards, and lots of other simple yet effective css tricks.
- Patterns:
- Moving from reusing an entire component to utilizing the logic with custom-hooks. It removes the verbose and over-architected components I used to have.
- Avoid accounting for every possible css' rules in styled components. Rather, using keywords and abstract the rules.
- All for the best user-experience
- No accounts are required for placing orders
- Local and remote carts are automatically synced on logging in
- Long forms are divided into steps
- Lots of visual hints
- Minimizing HTTP requests on rapid clicks
- Multi-step reservation form
- Functional shopping cart
- Informative landing page
- Clean and responsive design, material inputs