OOIN Creator Center is a React application built with Vite that allows users to discover, analyze, and manage content creators for marketing campaigns. The application provides tools for browsing creators from different social media platforms, managing brands, and facilitating creator communication.
-`ChatWindow` and `ChatInput`: Used for creator communications
-`RangeSlider`: Custom slider component for range-based filtering
## Mock Data
Currently, the application uses mock data defined in the Redux slices. In a production environment, these would be replaced with API calls to a backend service.
## Future Development Areas
### API Integration
- Replace mock data with actual API calls
- Implement authentication and user management
### Feature Enhancements
- Complete the unfinished pages (Creator Discovery, Deep Analysis, Settings)
- Enhance filtering capabilities
- Add data visualization for creator analytics
### Technical Improvements
- Implement unit and integration testing
- Add TypeScript for improved type safety
- Optimize performance for large datasets
## UI/UX Guidelines
- The application uses Bootstrap 5 for consistent styling
- Follow the existing component patterns for new UI elements
- Use Font Awesome icons from the available library
## Redux Store
### Store Configuration
The Redux store is configured in `src/store/index.js` with Redux Persist for state persistence.
### Key Slices
1.**creatorsSlice**
- Manages creator data and selection state
- Handles filtering logic based on selected filters
- Provides actions for selecting/deselecting creators
2.**filtersSlice**
- Manages the filter criteria for creator discovery
- Includes category filters, rating filters, and range filters
3.**brandsSlice**
- Manages brand data
- Includes mock brand information for display
4.**inboxSlice**
- Manages creator communication
- Handles message history and conversation state
## Adding New Features
### New Page
1. Create a new component in the `src/pages` directory
2. Add the route to `src/router/index.jsx`
3. Update the sidebar navigation in `src/components/Layouts/Sidebar.jsx` if needed
### New Component
1. Create the component in the `src/components` directory
2. Follow existing naming conventions and styling approaches
3. Reuse existing components where possible
### New Redux Slice
1. Create a new slice file in `src/store/slices`
2. Define initial state, reducers, and any async thunks needed
3. Add the reducer to the root reducer in `src/store/index.js`
## Performance Considerations
- Use memoization for expensive computations
- Implement virtualized lists for large data sets
- Optimize Redux selectors for efficient state access