A website with a simple look (but packed with features like a professional website) to display restaurant data from the API.
Final Submission:
Menjadi Front-End Web Developer Expert - Dicoding Indonesia
- Display restaurant list.
- Perform restaurant search/filter.
- Display restaurant details (name, rating, description, reviews, etc).
- Adding/removing restaurants to/from favorites.
- Responsive Layout:
- Mobile-First Approach strategy.
- Without CSS Framework.
- Accessibility:
- All web functionality can be done using the keyboard.
- Skip to Content technique.
- JavaScript Clean Code:
- ESLint as a linter.
- AirBnB JavaScript Code Style.
- SOLID principle.
- Progressive Web Apps:
- Application Shell architecture.
- Web App Manifest.
- Service Worker using WorkBox.
- Cache API & Fetch API on Service Worker.
- Web Components, using Custom Element.
- IndexedDB to store data.
- Automation Testing:
- Integration Test using Jest.
- End to End Test using CodeceptJS.
- Web Performance:
- Compressing images (Convert to WebP).
- Responsive image techniques.
- Lazy loading technique.
- Minify JavaScript modules.
- Code Splitting with SplitChunk technique.
- Web Vitals Metric Score (FCP < 2.5s, FID/TBT < 100ms, FID/TBT < 100ms).
- Better UI/UX:
- Skeleton UI.
- A loading indicator when data is being loaded from the server.
- Display better information/feedback if the HTTP request results in a failure.
- New Feature:
- A feature to provide customer reviews on the details page.
- A feature to search & filter some restaurants (Home & Favorite).
- More Content!
- More Optimization!
- Another Automation Testing!