React Task - Architecture & Custom Hooks
You will refactor and build a small React application using clean architecture patterns and reusable custom hooks.
π Project Setup
clone the project
git clone https://github.com/ITC-Frontend-Advanced/React-Task-Architecture-Custom-Hooks.gitCheckout the Refactor Branch
git checkout app
# Analyze the existing codebase before making changes.Refactor to Feature-Based Architecture
π Repository Structure
The repository contains two branches:
main: Contains this task description and instructions.
app: Contains an existing React application with
Mixed responsibilities
Centralized logic
Poor or flat structure
Your job is to refactor the app, not rewrite it.
π Objective
This task focuses on refactoring an existing React application to demonstrate a strong understanding of:
Feature-based architecture
Custom hook design and reuse
Feature-based architecture
You must reorganize the project into a feature-based structure.
Rules:
No feature logic in App.tsx
No API or business logic inside UI components
Each feature must be isolated
Extract Custom Hooks
You must extract at least two custom hooks from the existing code.
Required:
Data-related hook
Handles fetching, loading, and error state
Cleanup where necessary
Logic-related hook
Examples:
useCanvasuseFetchuseMobile
Rules:
Hooks must be generic
Hooks must not depend on specific UI components
π€ Deliverables
Your submission must include:
β Refactored code pushed to GitHub
β Clean, feature-based folder structure
β A
README.mdexplaining:What was refactored
Why the new structure is better
List of extracted custom hooks
How to run the project
Notes
UI improvements are not required
Styling changes are not required
Focus on structure and logic only
Deadline: 4 Jan 2026 11:59 PM
Last updated
Was this helpful?

