posit-dev / posit-dev/connect-extensions
Rewrite package-vulnerability-scanner as a pure Node.js app
Nobody has claimed this yet.
- Dominant language
- R
- Stars
- 10
- Forks
- 8
- Avg merge
- 5d 18h
- Merged PRs (30d)
- 1
Description
Summary
The package-vulnerability-scanner extension currently uses FastAPI as the backend with a Vue.js frontend. Since it's already serving a Vue.js frontend, it could be rewritten as a pure Node.js application (e.g., using Nuxt) to better dogfood our own Node.js extension support.
This would serve as a good real-world example of a Node.js-based Connect extension, complementing the ts-express and js-html examples.
Current implementation
- https://github.com/posit-dev/connect-extensions/blob/main/extensions/package-vulnerability-scanner/main.py
- Backend: FastAPI (Python)
- Frontend: Vue.js
Proposed change
- Rewrite the backend in Node.js (possibly using Nuxt or a similar framework)
- Keep the Vue.js frontend (Nuxt would be a natural fit)
- Maintain the same functionality
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with extensions/package-vulnerability-scanner/main.py to document the existing FastAPI behavior and identify the functionality that must be preserved. Review the ts-express and js-html examples for Node.js extension conventions, then determine how a Nuxt-based implementation can provide the same functionality and serve as a complete replacement.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- fastapi, node.js, nuxt, python
- Domain
- backend, full-stack
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 28/100