MCPcopy Index your code
hub / github.com/crocofied/PortNote

github.com/crocofied/PortNote @v1.2.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.2.0 ↗ · + Follow
3,380 symbols 9,039 edges 38 files 99 documented · 3%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Logo

PortNote

Stop juggling spreadsheets and guessing which service uses which port — PortNote gives you a clear, organized view of your entire port landscape. Add your servers and VMs via a sleek web interface, assign and document port usage across all systems, and avoid conflicts before they happen. Built by the developer of CoreControl, PortNote brings structure, clarity, and control to one of the most overlooked parts of your infrastructure.

"Buy Me A Coffee" Sponsor

Screenshots

Login Page: Login Page

Dashboard: Dashboard

Create: Create

Random Port Generator Portgen

Deployment

Simply run this compose.yml:

services:
  web:
    image: haedlessdev/portnote:latest
    ports:
      - "3000:3000"
    environment:
      JWT_SECRET: RANDOM_SECRET # Replace with a secure random string
      USER_SECRET: RANDOM_SECRET # Replace with a secure random string
      LOGIN_USERNAME: username # Replace with a username
      LOGIN_PASSWORD: mypassword # Replace with a custom password
      DATABASE_URL: "postgresql://postgres:postgres@db:5432/postgres"
    depends_on:
      db:
        condition: service_started

  agent:
    image: haedlessdev/portnote-agent:latest
    environment:
      DATABASE_URL: "postgresql://postgres:postgres@db:5432/postgres"
    depends_on:
      db:
        condition: service_started

  db:
    image: postgres:17
    restart: always
    environment:
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: postgres
      POSTGRES_DB: postgres
    volumes:
      - postgres_data:/var/lib/postgresql/data

volumes:
  postgres_data:

Tech Stack & Credits

The application is build with: - Next.js & Typescript - Tailwindcss with daisyui - PostgreSQL with Prisma ORM - Icons by Lucide - and a lot of love ❤️

Star History

Star History Chart

License

Licensed under the MIT License.

Extension points exported contracts — how you extend this code

Server (Interface)
(no doc)
app/types.ts
LoginRequest (Interface)
(no doc)
app/api/auth/login/route.ts
Port (Interface)
(no doc)
app/types.ts
ValidateRequest (Interface)
(no doc)
app/api/auth/validate/route.ts
DeleteRequest (Interface)
(no doc)
app/api/delete/route.ts
ScanRequest (Interface)
(no doc)
app/api/scan/route.ts
AddRequest (Interface)
(no doc)
app/api/add/route.ts

Core symbols most depended-on inside this repo

handleError
called by 9
app/dash/Dashboard.tsx
fetchData
called by 5
app/dash/Dashboard.tsx
handleDelete
called by 4
app/dash/Dashboard.tsx
toggleExpanded
called by 2
app/dash/Dashboard.tsx
handleScan
called by 2
app/dash/Dashboard.tsx
sortedPorts
called by 2
app/dash/Dashboard.tsx
compareIp
called by 1
app/utils.ts
validateForm
called by 1
app/dash/Dashboard.tsx

Shape

Function 2,236
Method 984
Class 92
Interface 63
Enum 4
Struct 1

Languages

TypeScript100%
Go1%

Modules by API surface

prisma/generated/prisma/runtime/library.js678 symbols
prisma/generated/prisma/runtime/react-native.js636 symbols
prisma/generated/prisma/runtime/edge.js583 symbols
prisma/generated/prisma/runtime/edge-esm.js582 symbols
prisma/generated/prisma/runtime/wasm.js530 symbols
prisma/generated/prisma/runtime/library.d.ts134 symbols
prisma/generated/prisma/runtime/index-browser.js94 symbols
prisma/generated/prisma/index.d.ts79 symbols
app/dash/Dashboard.tsx13 symbols
prisma/generated/prisma/runtime/index-browser.d.ts12 symbols
agent/main.go5 symbols
prisma/generated/prisma/wasm.js4 symbols

Datastores touched

postgresDatabase · 1 repos

For agents

$ claude mcp add PortNote \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact