Skip to main content

In the module: gridheim

read and analyze the file: openxls-developers-guide.md

  1. implement the complete set of functionality for the api by creating Spring Controllers for all of the handle classes in the system.

Use REST api best practices and the OpenXLS library as detailed in the guide.

  1. use our valkyrlabs model objects and services as detailed in the: /valkyrai/generated/spring/src/main/java/com/valkyrlabs/model

and: /valkyrai/generated/spring/src/main/java/com/valkyrlabs/api sources

  1. focus on thoroughness, when you see a TODO immediately implement a comprehenisve and high quality solution using whatever classes from the project classpath make the most sense... create the controller endpoints and functionality for all of the handle classes and really hammer out the logic and the documentation

Project Checklist

  1. Project Setup
    • Create valoride_docs folder
    • Create productContext.md
    • Create activeContext.md
    • Create systemPatterns.md
    • Create techContext.md
    • Create progress.md
    • Read all valoride_docs files to initialize memory bank
    • Create detailed checklist in /valoriderules
  2. API Implementation
    • Service Layer Implementation
      • Create Service classes for handle classes
        • WorkbookService
        • SheetService
        • RowService
        • ColumnService
        • CellService
        • FormatService
        • ChartService
        • ChartSeriesService
        • NamedRangeService
        • NoteService
        • DataValidationService
        • DataLabelService
      • Implement business logic and OpenXLS integration in each Service
      • Implement DTOs for request and response objects
      • Implement centralized exception handling
    • Controller Layer Implementation
      • Create Controller classes for handle classes
        • WorkbookController
        • SheetController
        • RowController
        • ColumnController
        • CellController
        • FormatController
        • ChartController
        • ChartSeriesController
        • NamedRangeController
        • NoteController
        • DataValidationController
        • DataLabelController
      • Implement REST API endpoints in each Controller
        • Implement GET endpoints
        • Implement POST endpoints
        • Implement PUT endpoints
        • Implement DELETE endpoints
      • Utilize Services in Controllers
      • Implement API documentation (Swagger) using OpenAPI spec
  3. Testing
    • Write JUnit tests for Service Layer
      • Test WorkbookService
      • Test SheetService
      • Test RowService
      • Test ColumnService
      • Test CellService
      • Test FormatService
      • Test ChartService
      • Test ChartSeriesService
      • Test NamedRangeService
      • Test NoteService
      • Test DataValidationService
      • Test DataLabelService
    • Write integration tests for Controller Layer
      • Test WorkbookController
      • Test SheetController
      • Test RowController
      • Test ColumnController
      • Test CellController
      • Test FormatController
      • Test ChartController
      • Test ChartSeriesController
      • Test NamedRangeController
      • Test NoteController
      • Test DataValidationController
      • Test DataLabelController
  4. Documentation
    • Generate OpenAPI/Swagger documentation
    • Add JavaDoc comments to all classes and methods
    • Update valoride_docs with implementation details
  5. Dependency Management
    • Add OpenXLS dependency to pom.xml
    • Verify and update all dependencies
  6. Code Review and Refinement
    • Code review for each layer (Service, Controller)
    • Refine logic and error handling
    • Optimize performance in Services and Controllers