Shyam-Chen/Express-Starter
35 issues need attention.
7 errors and 28 warnings in the paths between 32 routes and 3 tables.
- ROUTES
- 32
- TABLES
- 3
- FILES READ
- 42
- RULES RUN
- 7/7
35 findings
GET / can reach lists without authenticating.
auth-before-dataGET / → listsGET /item/:id can reach lists without authenticating.
auth-before-dataGET /item/:id → listsGET /count can reach lists without authenticating.
auth-before-dataGET /count → listsGET /pagination can reach lists without authenticating.
auth-before-dataGET /pagination → listsPUT /:id can reach lists without authenticating.
auth-before-dataPUT /:id → listsDELETE /:id can reach lists without authenticating.
auth-before-dataDELETE /:id → listsDELETE / can reach lists without authenticating.
auth-before-dataDELETE / → listsPOST /login reaches users without auth, which is expected for an authentication endpoint.
auth-entry-publicPOST /login → usersPOST /register has no validator or rate limiter attached.
public-entry-guardedPOST /login has no validator or rate limiter attached.
public-entry-guardedPOST /revoke has no validator or rate limiter attached.
public-entry-guardedPOST /login/2fa-send has no validator or rate limiter attached.
public-entry-guardedPOST /login/2fa-verify has no validator or rate limiter attached.
public-entry-guardedGET /2fa/settings has no validator or rate limiter attached.
public-entry-guardedPOST /2fa/setup has no validator or rate limiter attached.
public-entry-guardedPOST /2fa/setup-send has no validator or rate limiter attached.
public-entry-guardedPOST /2fa/setup-verify has no validator or rate limiter attached.
public-entry-guardedPUT /profile has no validator or rate limiter attached.
public-entry-guardedPOST /impression-password has no validator or rate limiter attached.
public-entry-guardedPOST /forgot-password has no validator or rate limiter attached.
public-entry-guardedPOST /change-email has no validator or rate limiter attached.
public-entry-guardedPOST /change-password has no validator or rate limiter attached.
public-entry-guardedGET /facebook/login has no validator or rate limiter attached.
public-entry-guardedPOST / has no validator or rate limiter attached.
public-entry-guardedGET / has no validator or rate limiter attached.
public-entry-guardedGET /item/:id has no validator or rate limiter attached.
public-entry-guardedGET /count has no validator or rate limiter attached.
public-entry-guardedGET /pagination has no validator or rate limiter attached.
public-entry-guardedPUT /:id has no validator or rate limiter attached.
public-entry-guardedDELETE /:id has no validator or rate limiter attached.
public-entry-guardedDELETE / has no validator or rate limiter attached.
public-entry-guardedPOST /single has no validator or rate limiter attached.
public-entry-guardedPOST /multiple has no validator or rate limiter attached.
public-entry-guardedPOST /siteverify has no validator or rate limiter attached.
public-entry-guardedrefreshtokens is not connected to anything.
no-orphan-datastore
Part of this repository was not read, so this report is incomplete. Unread: src/authentication/model.js, src/authentication/controller.js.
Free account, no card. The repository opens as an editable graph.
Add this check to the README
[](https://wyro.in/scan/Shyam-Chen/Express-Starter)It updates itself whenever the repository changes and links back to this report.
What this is
Wyro reads the repository’s routes and data models and checks the paths between them: whether a route can reach a table without passing a guard, whether a datastore holding personal data is exposed to a public read, whether an endpoint that issues credentials requires the credentials it issues.
It is rule-based, not a model. The same commit produces the same result every time, and it does not guess at business rules it cannot see. A rule with nothing to look at is reported as not having run — never as a pass.
This check runs on public source through GitHub’s own API and needs no account. A free account adds the editable architecture canvas, private repositories on paid plans, and a CI gate. No card required.