https://github.com/vafc21/Postify
· scanned 2026-06-16 00:46 UTC (2 months, 1 week ago)
69 raw signals (0 security + 69 graph)
Last scanned 2 months, 1 week ago · v1 · 67 actionable findings from 1 signal source. 2 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 465 nodes from the latest scan, grouped by kind. Each node is a unit the engine identified (file, function, endpoint, table…). Most users won't need this view — it's primarily for debugging the engine's graph extraction or for AI agents that want to enumerate the project structure.
| Label | Layer | Status | Path |
|---|---|---|---|
ThemeSync |
software | healthy | client/src/App.jsx:ThemeSync |
AppRoutes |
software | healthy | client/src/App.jsx:AppRoutes |
App |
software | healthy | client/src/App.jsx:App |
getToken |
software | healthy | client/src/api.js:getToken |
setToken |
software | healthy | client/src/api.js:setToken |
Sidebar |
software | healthy | client/src/components/Sidebar.jsx:Sidebar |
loadClients |
software | healthy | client/src/components/Sidebar.jsx:loadClients |
handleClientCreated |
software | healthy | client/src/components/Sidebar.jsx:handleClientCreated |
navStyle |
software | healthy | client/src/components/Sidebar.jsx:navStyle |
NewClientModal |
software | healthy | client/src/components/NewClientModal.jsx:NewClientModal |
set |
software | healthy | client/src/components/NewClientModal.jsx:set |
handleSubmit |
software | healthy | client/src/components/NewClientModal.jsx:handleSubmit |
Field |
software | healthy | client/src/components/NewClientModal.jsx:Field |
clampAspect |
software | healthy | client/src/components/StoryEditor.jsx:clampAspect |
nextId |
software | healthy | client/src/components/StoryEditor.jsx:nextId |
defaultLayout |
software | healthy | client/src/components/StoryEditor.jsx:defaultLayout |
defaultLayoutFb |
software | healthy | client/src/components/StoryEditor.jsx:defaultLayoutFb |
clone |
software | healthy | client/src/components/StoryEditor.jsx:clone |
StoryEditor |
software | healthy | client/src/components/StoryEditor.jsx:StoryEditor |
setBackground |
software | healthy | client/src/components/StoryEditor.jsx:setBackground |
setElements |
software | healthy | client/src/components/StoryEditor.jsx:setElements |
measure |
software | healthy | client/src/components/StoryEditor.jsx:measure |
updateEl |
software | healthy | client/src/components/StoryEditor.jsx:updateEl |
removeEl |
software | healthy | client/src/components/StoryEditor.jsx:removeEl |
startDrag |
software | healthy | client/src/components/StoryEditor.jsx:startDrag |
move |
software | healthy | client/src/components/StoryEditor.jsx:move |
up |
software | healthy | client/src/components/StoryEditor.jsx:up |
startRotate |
software | healthy | client/src/components/StoryEditor.jsx:startRotate |
addText |
software | healthy | client/src/components/StoryEditor.jsx:addText |
addMention |
software | healthy | client/src/components/StoryEditor.jsx:addMention |
addSticker |
software | healthy | client/src/components/StoryEditor.jsx:addSticker |
uploadBackground |
software | healthy | client/src/components/StoryEditor.jsx:uploadBackground |
save |
software | healthy | client/src/components/StoryEditor.jsx:save |
clean |
software | healthy | client/src/components/StoryEditor.jsx:clean |
resetDefault |
software | healthy | client/src/components/StoryEditor.jsx:resetDefault |
canvasBg |
software | healthy | client/src/components/StoryEditor.jsx:canvasBg |
active |
software | healthy | client/src/components/StoryEditor.jsx:active |
EditableElement |
software | healthy | client/src/components/StoryEditor.jsx:EditableElement |
ElementControls |
software | healthy | client/src/components/StoryEditor.jsx:ElementControls |
RotationField |
software | healthy | client/src/components/StoryEditor.jsx:RotationField |
displayHandle |
software | healthy | client/src/components/StoryEditor.jsx:displayHandle |
Section |
software | healthy | client/src/components/StoryEditor.jsx:Section |
Field |
software | healthy | client/src/components/StoryEditor.jsx:Field |
segOn |
software | healthy | client/src/components/StoryEditor.jsx:segOn |
postLinks |
software | healthy | client/src/components/MediaSlot.jsx:postLinks |
MediaSlot |
software | healthy | client/src/components/MediaSlot.jsx:MediaSlot |
uploadFiles |
software | healthy | client/src/components/MediaSlot.jsx:uploadFiles |
deleteMedia |
software | healthy | client/src/components/MediaSlot.jsx:deleteMedia |
saveField |
software | healthy | client/src/components/MediaSlot.jsx:saveField |
onLocationChange |
software | healthy | client/src/components/MediaSlot.jsx:onLocationChange |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
README.md |
software | healthy | README.md |
package.json |
software | healthy | package.json |
render.yaml |
software | healthy | render.yaml |
package-lock.json |
software | healthy | package-lock.json |
.env.example |
software | healthy | .env.example |
LICENSE |
software | healthy | LICENSE |
vite.config.js |
software | healthy | client/vite.config.js |
README.md |
software | healthy | client/README.md |
package.json |
software | healthy | client/package.json |
index.html |
software | healthy | client/index.html |
package-lock.json |
software | healthy | client/package-lock.json |
eslint.config.js |
software | healthy | client/eslint.config.js |
index.css |
software | healthy | client/src/index.css |
App.jsx |
software | healthy | client/src/App.jsx |
api.js |
software | healthy | client/src/api.js |
App.css |
software | healthy | client/src/App.css |
main.jsx |
software | healthy | client/src/main.jsx |
Sidebar.jsx |
software | healthy | client/src/components/Sidebar.jsx |
NewClientModal.jsx |
software | healthy | client/src/components/NewClientModal.jsx |
StoryEditor.jsx |
software | healthy | client/src/components/StoryEditor.jsx |
MediaSlot.jsx |
software | healthy | client/src/components/MediaSlot.jsx |
storyStickers.jsx |
software | healthy | client/src/components/storyStickers.jsx |
CampaignWizard.jsx |
software | healthy | client/src/components/CampaignWizard.jsx |
Layout.jsx |
software | healthy | client/src/components/Layout.jsx |
AuthContext.jsx |
software | healthy | client/src/contexts/AuthContext.jsx |
ThemeContext.jsx |
software | healthy | client/src/contexts/ThemeContext.jsx |
Settings.jsx |
software | healthy | client/src/pages/Settings.jsx |
OAuthResult.jsx |
software | healthy | client/src/pages/OAuthResult.jsx |
Register.jsx |
software | healthy | client/src/pages/Register.jsx |
ClientProfile.jsx |
software | healthy | client/src/pages/ClientProfile.jsx |
Dashboard.jsx |
software | healthy | client/src/pages/Dashboard.jsx |
Login.jsx |
software | healthy | client/src/pages/Login.jsx |
CampaignView.jsx |
software | healthy | client/src/pages/CampaignView.jsx |
2026-05-15-phase2-meta-api.md |
software | healthy | docs/superpowers/plans/2026-05-15-phase2-meta-api.md |
2026-06-12-storrito-connect-ux.md |
software | healthy | docs/superpowers/plans/2026-06-12-storrito-connect-ux.md |
2026-05-15-phase3-frontend.md |
software | healthy | docs/superpowers/plans/2026-05-15-phase3-frontend.md |
2026-05-15-phase1-backend.md |
software | healthy | docs/superpowers/plans/2026-05-15-phase1-backend.md |
2026-06-12-storrito-story-stickers.md |
software | healthy | docs/superpowers/plans/2026-06-12-storrito-story-stickers.md |
2026-06-12-storrito-connect-ux-design.md |
software | healthy | docs/superpowers/specs/2026-06-12-storrito-connect-ux-desig… |
2026-06-12-storrito-story-stickers-design.md |
software | healthy | docs/superpowers/specs/2026-06-12-storrito-story-stickers-d… |
2026-05-15-postify-redesign.md |
software | healthy | docs/superpowers/specs/2026-05-15-postify-redesign.md |
jest.config.js |
software | healthy | server/jest.config.js |
package.json |
software | healthy | server/package.json |
package-lock.json |
software | healthy | server/package-lock.json |
index.js |
software | healthy | server/index.js |
slotGenerator.test.js |
software | healthy | server/tests/slotGenerator.test.js |
storrito.test.js |
software | healthy | server/tests/storrito.test.js |
meta.test.js |
software | healthy | server/tests/meta.test.js |
storyLayout.test.js |
software | healthy | server/tests/storyLayout.test.js |
worker.test.js |
software | healthy | server/tests/worker.test.js |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
GET /clients |
api | healthy | client/src/components/Sidebar.jsx |
POST /clients |
api | healthy | client/src/components/NewClientModal.jsx |
GET /posts/places/search |
api | healthy | client/src/components/MediaSlot.jsx |
GET /settings |
api | healthy | client/src/contexts/AuthContext.jsx |
POST /auth/login |
api | healthy | client/src/contexts/AuthContext.jsx |
POST /auth/register |
api | healthy | client/src/contexts/AuthContext.jsx |
POST /auth/logout |
api | healthy | client/src/contexts/AuthContext.jsx |
PUT /settings |
api | healthy | client/src/pages/Settings.jsx |
GET /posts?status=pending&limit=20 |
api | healthy | client/src/pages/Dashboard.jsx |
GET /posts?upcoming=true&limit=20 |
api | healthy | client/src/pages/Dashboard.jsx |
USE /uploads |
api | healthy | server/index.js |
USE /api/auth |
api | healthy | server/index.js |
USE /api/settings |
api | healthy | server/index.js |
USE /api/clients |
api | healthy | server/index.js |
USE /api/campaigns |
api | healthy | server/index.js |
USE /api/posts |
api | healthy | server/index.js |
USE /api/oauth |
api | healthy | server/index.js |
GET /api/templates |
api | healthy | server/index.js |
GET /api/health |
api | healthy | server/index.js |
GET / |
api | healthy | server/routes/settings.js |
PUT / |
api | healthy | server/routes/settings.js |
GET /places/search |
api | healthy | server/routes/posts.js |
GET /campaign/:campaignId |
api | healthy | server/routes/posts.js |
POST /:id/media |
api | healthy | server/routes/posts.js |
POST /:id/story-asset |
api | healthy | server/routes/posts.js |
PUT /:id |
api | healthy | server/routes/posts.js |
DELETE /:id/media |
api | healthy | server/routes/posts.js |
POST /:id/unpost |
api | healthy | server/routes/posts.js |
POST /register |
api | healthy | server/routes/auth.js |
POST /login |
api | healthy | server/routes/auth.js |
POST /logout |
api | healthy | server/routes/auth.js |
GET /me |
api | healthy | server/routes/auth.js |
POST / |
api | healthy | server/routes/clients.js |
GET /:id |
api | healthy | server/routes/clients.js |
DELETE /:id |
api | healthy | server/routes/clients.js |
POST /:id/storrito/sync |
api | healthy | server/routes/clients.js |
DELETE /:id/storrito |
api | healthy | server/routes/clients.js |
POST /:id/campaigns |
api | healthy | server/routes/clients.js |
GET /:id/campaigns |
api | healthy | server/routes/clients.js |
GET /clients/:clientId/connect/:platform |
api | healthy | server/routes/oauth.js |
GET /callback |
api | healthy | server/routes/oauth.js |
DELETE /clients/:clientId/tokens/:platform |
api | healthy | server/routes/oauth.js |
GET /templates |
api | healthy | server/routes/campaigns.js |
GET /:id/posts |
api | healthy | server/routes/campaigns.js |
| Label | Layer | Status | Path |
|---|---|---|---|
client |
software | healthy | client |
src |
software | healthy | client/src |
components |
software | healthy | client/src/components |
contexts |
software | healthy | client/src/contexts |
pages |
software | healthy | client/src/pages |
docs |
software | healthy | docs |
superpowers |
software | healthy | docs/superpowers |
plans |
software | healthy | docs/superpowers/plans |
specs |
software | healthy | docs/superpowers/specs |
server |
software | healthy | server |
tests |
software | healthy | server/tests |
middleware |
software | healthy | server/middleware |
scripts |
software | healthy | server/scripts |
utils |
software | healthy | server/utils |
routes |
software | healthy | server/routes |
services |
software | healthy | server/services |
| Label | Layer | Status | Path |
|---|---|---|---|
/Settings |
frontend | healthy | client/src/pages/Settings.jsx |
/OAuthResult |
frontend | healthy | client/src/pages/OAuthResult.jsx |
/Register |
frontend | healthy | client/src/pages/Register.jsx |
/ClientProfile |
frontend | healthy | client/src/pages/ClientProfile.jsx |
/Dashboard |
frontend | healthy | client/src/pages/Dashboard.jsx |
/Login |
frontend | healthy | client/src/pages/Login.jsx |
/CampaignView |
frontend | healthy | client/src/pages/CampaignView.jsx |
/login |
frontend | healthy | client/src/App.jsx |
* |
frontend | healthy | client/src/App.jsx |
/oauth-result |
frontend | healthy | client/src/App.jsx |
/ |
frontend | healthy | client/src/App.jsx |
/clients/:id |
frontend | healthy | client/src/App.jsx |
/campaigns/:id |
frontend | healthy | client/src/App.jsx |
/settings |
frontend | healthy | client/src/App.jsx |
| Label | Layer | Status | Path |
|---|---|---|---|
App |
frontend | healthy | client/src/App.jsx |
Sidebar |
frontend | healthy | client/src/components/Sidebar.jsx |
NewClientModal |
frontend | healthy | client/src/components/NewClientModal.jsx |
StoryEditor |
frontend | healthy | client/src/components/StoryEditor.jsx |
MediaSlot |
frontend | healthy | client/src/components/MediaSlot.jsx |
CampaignWizard |
frontend | healthy | client/src/components/CampaignWizard.jsx |
Layout |
frontend | healthy | client/src/components/Layout.jsx |
Settings |
frontend | healthy | client/src/pages/Settings.jsx |
OAuthResult |
frontend | healthy | client/src/pages/OAuthResult.jsx |
Register |
frontend | healthy | client/src/pages/Register.jsx |
ClientProfile |
frontend | healthy | client/src/pages/ClientProfile.jsx |
Dashboard |
frontend | healthy | client/src/pages/Dashboard.jsx |
Login |
frontend | healthy | client/src/pages/Login.jsx |
CampaignView |
frontend | healthy | client/src/pages/CampaignView.jsx |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::.env.example |
security | healthy | .env.example |
auth::client/src/pages/Settings.jsx |
security | healthy | client/src/pages/Settings.jsx |
auth::client/src/pages/OAuthResult.jsx |
security | healthy | client/src/pages/OAuthResult.jsx |
auth::server/middleware/authMiddleware.js |
security | healthy | server/middleware/authMiddleware.js |
auth::server/routes/auth.js |
security | healthy | server/routes/auth.js |
auth::server/routes/oauth.js |
security | healthy | server/routes/oauth.js |
auth::server/services/meta.js |
security | healthy | server/services/meta.js |
auth::client/src/api.js |
security | healthy | client/src/api.js |
auth::client/src/pages/ClientProfile.jsx |
security | healthy | client/src/pages/ClientProfile.jsx |
auth::client/src/App.jsx |
security | healthy | client/src/App.jsx |
auth::server/index.js |
security | healthy | server/index.js |
auth::README.md |
security | healthy | README.md |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-ea8r3tsu |
software | healthy | /tmp/repobility-clone-ea8r3tsu |
| Label | Layer | Status | Path |
|---|---|---|---|
StorritoNotConfiguredError |
software | healthy | server/services/storrito.js:StorritoNotConfiguredError |
| Label | Layer | Status | Path |
|---|---|---|---|
postgresql |
data | healthy | README.md |
| Label | Layer | Status | Path |
|---|---|---|---|
port:5000 |
network | healthy | .env.example |
| Label | Layer | Status | Path |
|---|---|---|---|
vps::aws |
hardware | healthy | server/package-lock.json |
| Label | Layer | Status | Path |
|---|---|---|---|
password_literal::.env.example |
security | healthy | .env.example |
This page is publicly accessible at:
https://repobility.com/scan/a9efc46e-fbf6-420e-b120-09f856f453fa/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/a9efc46e-fbf6-420e-b120-09f856f453fa/
Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.