Skip to content

kweeuhree/plant-parent-redux

Repository files navigation

Plant Parent Application Overview

Aspect Description
Purpose This app is designed to track plants, their family trees, and timelines. It supports CRUD operations for plants and manages the hierarchical relationships between them.
Key Features
  • Family Tree Structure: Plants are organized into family trees.
  • Plant Management: Users can create, update, delete, and track plants. Each plant record includes:
    • Plant ID: Unique identifier for the plant.
    • User ID: Identifier for the user who owns the plant.
    • Timeline ID: Identifier for tracking events related to the plant over time.
    • Family Tree ID: Links the plant to its family tree.
  • Timeline: Each plant has a timeline to track its growth.
Technology Stack
  • Frontend: Built using Vite, TypeScript, React, and Redux.
  • Backend: TBC will be developed in Go with a MySQL database.
Key Considerations
  • Data Normalization: I've opted to use separate IDs for different aspects of the plant (user, timeline, family tree). This approach helps keep data organized but requires careful management of relationships.
  • Performance: Storing and managing hierarchical data might involve recursive queries or complex joins, which could impact performance.
  • State Management: Redux is used for state management, with slices for handling user, plant and message states. Slices are created with createAppSlice.
Challenges
  • Complex Data Relationships: Managing and querying hierarchical data and maintaining relationships between plants and their family trees.
  • State Management: Ensuring that state management with Redux is efficiently handled, especially with complex relationships and potential performance implications.
Future Considerations
  • Performance Optimization: Considerations for optimizing database queries and state management, especially if the app scales.
  • User Experience: Enhancing how users interact with plants and family trees, ensuring that the UI reflects the hierarchical structure clearly.

About

pup and repotting journal with Vite+Redux+TypeScript

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published