Skip to content

Commit 84aa3dc

Browse files
committed
add next steps
1 parent 8e0a35a commit 84aa3dc

File tree

2 files changed

+38
-7
lines changed

2 files changed

+38
-7
lines changed
164 KB
Loading

contributor_docs/pr05_2025_typescript_migration/index.md

Lines changed: 38 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -503,12 +503,43 @@ export const updatePreferences: RequestHandler<
503503

504504
## Next Step Issues:
505505

506-
- Migration for the rest of the repo
506+
<details>
507+
<summary>Migrate the rest of the repo to Typescript</summary>
508+
509+
- [Issue Link - TODO]()
510+
511+
- Prioritise `/server` if possible
512+
- Testing is mandatory for `/server` migration
513+
- For `/client` files, if the component does not hit the `/server` api, it is ready for migration.
514+
- If it does it is recommended to wait for the relevant `/server` system to be migrated first (eg. Projects, Collections)
515+
516+
</details>
517+
518+
<details>
519+
<summary>Add end-to-end tests to cover the core user flows</summary>
520+
521+
- [Issue Link - TODO]()
507522

508-
- Prioritise `/server` if possible
509-
- Testing is mandatory for `/server` migration
510-
- For `/client` files, if the component does not hit the `/server` api, it is ready for migration.
511-
- If it does it is recommended to wait for the relevant `/server` system to be migrated first (eg. Projects, Collections)
523+
- Writing a suite of e2e tests to cover core user flows would enable security against regression with fewer test files necessary
524+
- This can be done with Playwrite or Cypress & can be integrated into CICD pipelines.
525+
- Examples of core user flows include:
526+
- `User can log in`
527+
- `User can save a sketch & see it in their sketches`
528+
- To be discussed further with the contributor community.
512529

513-
- E2e test to cover core user flows
514-
- Open API
530+
</details>
531+
532+
<details>
533+
<summary>Create a [OpenAPI/Swagger](https://swagger.io/tools/swagger-ui/) documentation microsite for the server APIs</summary>
534+
535+
<img src='./images/swagger-microsite.png' alt='proof of concept of a swagger documentation microsite'>
536+
537+
- [Issue Link - TODO]()
538+
539+
- This would enable new contributors to have a centralised location to look for APIs
540+
- Also aligns with current API documentation standards as of 2025
541+
- Current API documentation lives [here](https://github.com/processing/p5.js-web-editor/blob/develop/contributor_docs/public_api.md) and does not contain all the APIs
542+
- [Proof of concept PR here](https://github.com/processing/p5.js-web-editor/pull/3706)
543+
- I have written out the User related APIs by hand, but ideally we would have automation to check that this document is accurate, or to autogenerate the document, or autogenerate types & routes from the document.
544+
545+
</details>

0 commit comments

Comments
 (0)