Design and develop an interactive family tree visualization tool. The tool should represent a caste family tree with 72 nodes, where each node represents a primary family branch. Upon clicking on a node, it should expand to show the surnames associated with that branch, along with their respective deity and gotra information.
- Primary Nodes: There are 72 primary family branches (nodes).
- Sub-nodes: Each primary node has between 10 to 20 sub-nodes, representing surnames.
- Sub-node Details: Each surname should be associated with specific details including the deity and gotra information.
- Main View:
- Display 72 interactive bubbles, each representing a primary family branch.
- Bubbles should be clearly labeled and visually distinct.
- Interaction:
- Clicking on a bubble should expand it to reveal the associated surnames.
- The surnames should appear as smaller bubbles or nodes connected to the primary node.
- Each surname bubble should display the deity and gotra information when hovered over or clicked.
- Design Considerations:
- Ensure the UI is responsive and visually appealing.
- Maintain a user-friendly experience with smooth animations for transitions and expansions.
- Consider accessibility features like keyboard navigation and screen reader support.
- Frontend: Use HTML, CSS, and JavaScript for building the UI.
- Libraries: Consider using a visualization library like D3.js or a framework like React.js to manage the nodes and interactions.
- Optional: Implement a basic backend using Node.js to serve data dynamically, or use JSON files to store the family tree data.
- A fully functional web application that meets the requirements outlined above.
- A brief document explaining the data structure, design choices, and any challenges faced during development.
- A video walkthrough or presentation demonstrating the working application.
- Functionality: Does the application work as expected? Are all nodes and interactions implemented correctly?
- Design and Usability: Is the interface intuitive, visually appealing, and easy to navigate?
- Code Quality: Is the code well-organized, commented, and following best practices?
- Creativity: Are there any additional features or enhancements that improve the overall experience?
- Week 1: Initial design and data structure planning.
- Week 2-3: Implementation of the main UI and node interactions.
- Week 4: Testing, debugging, and final touches.
- Week 5: Submission and presentation.
- Final Submission Date: 7 Days since first Pull Date
-
GitHub Repository:
- Create a private GitHub repository for your project.
- Commit and push your code regularly, documenting significant changes with clear commit messages.
- Ensure the repository contains all project files, including the source code, documentation, and any necessary resources.
-
Submission:
- Invite [Insert Supervisor's GitHub Username] to your private repository as a collaborator.
- Submit a link to your GitHub repository via Email on RecursiveZero@outlook.com by the deadline.
- Prepare for a brief presentation or demo to showcase your work.
Good Luck!
Note: This assignment aims to evaluate your skills in web development, design aesthetics, and attention to detail. Good luck!
© 2023 RecursiveZero, All rights reserved.