Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature Request: Move Lectern JS Client into monorepo #206

Closed
7 of 8 tasks
joneubank opened this issue May 26, 2024 · 3 comments
Closed
7 of 8 tasks

Feature Request: Move Lectern JS Client into monorepo #206

joneubank opened this issue May 26, 2024 · 3 comments
Assignees

Comments

@joneubank
Copy link
Contributor

joneubank commented May 26, 2024

We want to move the lectern client codebase into this repository so they can be maintained as part of the same monorepo.

Current js-lectern-client repo: https://github.com/overture-stack/js-lectern-client

There are many advantages to this move, but some important ones are:

  • using the same type system between server and client
  • enforcing changes to dictionary model are reflected in server and validation engine at same time
  • simplifying documentation and user onboarding by gathering information about server and client in the same location

Details

  • Create a new monorepo directory called packages to store packages published to npm
  • Create a new package called client to store the js-lectern-client code
  • Move existing lectern client code here

Once the client code is co-located with the server additional issues will be needed to track some improvements to the client from its current state

  • Update the types used by the client to reference the dictionary library
  • Move data validation into a shared library so it is usable on the server or in the client
  • Remove the generated HTML dev docs and standardize documentation between server and client
  • README documentation for devs, client functionality and how to use

Once the client has been published from this repository:

@joneubank joneubank changed the title Feature Request: Move Lecter JS Client into monorepo Feature Request: Move Lectern JS Client into monorepo May 26, 2024
@joneubank joneubank self-assigned this May 26, 2024
@joneubank
Copy link
Contributor Author

Removed the task to make the client runnable in browser and moved that to its own issue: #213 . The changes to allow this relate to script validations and it is desired to remove these instead of modifying that code at all. Temporarily we will live with this non browser version.

@joneubank joneubank reopened this Jun 18, 2024
@joneubank
Copy link
Contributor Author

Readme updated to describe current state: 6784f6c

@joneubank
Copy link
Contributor Author

Closing this ticket with the client merged and available in current state. Future work is needed to make it usable in the browser.

Other tasks that should be considered:

  • Export all lectern dictionary content in the client, writing lectern types and parsing dictionaries is behaviour I would want from the client.
  • Expose validation functions, currently only processing is available
  • Rename the processing functions
  • Separate processing into:
    • data structure validation
    • data type conversion
    • data value validation

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant