A practical hierarchical task management application built with Angular, focusing on efficient task organization and straightforward data management.
Taskorator provides an intuitive platform for organizing tasks in hierarchical structures. Built with Angular 17 and Firebase, it offers a practical approach to task management with in-memory caching for improved performance.
-
Task Hierarchy: Create and manage tasks with parent-child relationships
-
Surface-Level Loading: Efficient data loading by requesting only direct child tasks
-
In-Memory Caching: Simple but effective caching of Firebase requests
-
Firebase Integration: Real-time database capabilities
-
Responsive Design: Consistent experience across devices
Task creation and customization hub.
Task monitoring and management interface.
Time-based task organization.
Task visualization interface.
Batch task management capabilities.
Taskorator uses a parent-based loading approach:
- Loads only direct child tasks of the selected parent
- Reduces unnecessary data fetching
- Maintains performance with large task hierarchies
- Simple navigation through task levels
Simple but effective in-memory caching:
- Stores Firebase request results in memory
- Returns cached data when available
- Reduces Firebase calls for frequently accessed data
- Page refresh available for manual cache clearing
- Real-time database using Firestore
- Basic security rules for API access control
- Foundation for future feature expansion
- Prepared for GPT API integration with user-based access rules
- Clone the repository
Currently not open.
- Install dependencies
npm install
- Start the development server
ng serve
Visit http://localhost:4200
to access the application.
- Frontend: Angular 17
- UI Framework: Angular Material
- Backend: Firebase Firestore
- Authentication: Firebase Auth
- Styling: SCSS
- State Management: Simple service-based caching
Challenge: Managing large sets of hierarchical tasks. Solution: Implemented parent-based loading strategy, only fetching direct child tasks when needed.
Challenge: Reducing Firebase calls while maintaining data access. Solution: Simple in-memory caching of Firebase requests, with manual refresh option when needed.
Challenge: Preparing for future features like GPT integration. Solution: Firebase rules structure ready for user-based API access control.
Contributions are welcome! Please read our Contributing Guide for details on our code of conduct and the process for submitting pull requests.
This project is licensed under the MIT License - see the LICENSE file for details.
Currently project is private.