vccs
Vue 3용 차트 컴포넌트 모음, Recharts에서 포팅
LinkedIn 연결을 넣으면 직업별로 정렬해 보여줍니다 검색·탐색·질문은 영어로 가능합니다 브라우저에서만 실행되고 데이터는 업로드되지 않습니다
Drop in your LinkedIn connections and see them arranged by what people do. Search, orbit and ask questions in plain English. Runs in your browser; nothing is uploaded. Open source.
데이터JavaScript · CSSGitHub @asturksever온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기See who you know: a 3D map of your LinkedIn connections, clustered by what people do. Runs in your browser; nothing uploaded.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
See who you know. Drop in your LinkedIn connections and they arrange
themselves by what people do: thousands of names become a few dozen clusters
you can orbit, search and question in plain English. It runs entirely in your
browser. Nothing is uploaded.
Try it → Start with
the built-in demo of 250 invented people, or drop your own export in.
LinkedIn search answers "who matches this keyword". It doesn't answer "who do
I already know in PropTech?", and that is the question that matters when you
need an introduction.README 전문 보기 ↗See who you know. Drop in your LinkedIn connections and they arrange themselves by what people do: thousands of names become a few dozen clusters you can orbit, search and question in plain English. It runs entirely in your browser. Nothing is uploaded.
Try it → Start with the built-in demo of 250 invented people, or drop your own export in.
LinkedIn search answers "who matches this keyword". It doesn't answer "who do I already know in PropTech?", and that is the question that matters when you need an introduction.
Connections.csv on the page.
It is read and classified in that tab, and kept in that browser.| Your first session → | A ten-minute walkthrough of everything, on the demo, with screenshots. |
| Install and self-host → | Run it locally, build a single file, put your own copy on GitHub Pages, and troubleshooting. |
| How questions are answered → | How a question becomes a filter, with measured results. |
| Ask from your AI tools (MCP) → | Use your network from Claude, Cursor, VS Code and other MCP clients. |
The same engine also runs as an MCP server, so Claude, Cursor, VS Code and other AI tools can answer questions about your network in the chat, like "who do I know at Esri?" or "which three VCs do I know best?".
Claude Desktop: download
network-constellation.mcpb,
double-click it, choose your Connections.csv (not the .mcpb itself), and
start a new chat. Everything else, for example Claude Code:
claude mcp add network-constellation --scope user -- npx -y github:asturksever/network-constellation --csv /full/path/to/Connections.csv
It runs on your machine and reads only that file, but what it returns (the names, titles and employers of the people a question matches) is sent to your AI tool's provider as part of the conversation. It never returns email addresses, and returns profile links only if you ask it to. Setup for every client, and the six tools: docs/mcp.md.
Your CSV is read in the tab you dropped it into and kept in that browser's storage (IndexedDB). It is never uploaded. There is no backend, no account and no analytics. Forget in the control panel erases everything the page kept.
Without an API key, the page makes one request to anyone else: it loads the 3D
library from cdn.jsdelivr.net.
With your own Anthropic key, three things can be sent to Anthropic, and nothing else:
Never email addresses or profile links. Requests go straight from your browser
to api.anthropic.com, and the page's Content-Security-Policy lets its scripts
send data nowhere else. If a brief finds a public photo, your browser loads it
from the site that hosts it, as it would any image. Results are kept in your
browser, so nothing is paid for twice. Your key is kept only if you tick
Remember. Use a key with a spend limit.
What that costs: about $0.06 to place the employers that two or more of your connections share, in a 10,000-person network. About $0.70 to place all of them. $0.10–$0.30 for each Enrich profile.
The MCP server is separate from the page and has its own trade-off, described above and in docs/mcp.md.
npm run logos is a separate, optional build step on your own machine. It
sends domain guesses made from employer names to unavatar.io, DuckDuckGo and
Google to fetch favicons. Company names only, never people's.
src/taxonomy.js: it is
readable and editable on purpose. The same rules that classify a job title
also parse a question.Node 18 or newer. There are no dependencies, so there is nothing to install.
git clone https://github.com/asturksever/network-constellation.git
cd network-constellation
npm run dev # http://localhost:8080
npm test # the tests
npm run pages # the site as GitHub Pages serves it, on :8090
npm run bundle:demo # one self-contained HTML file with the demo, safe to share
npm run mcpb # the Claude Desktop extension, dist/network-constellation.mcpb
npm run bundle # the same with YOUR graph inside: keep it to yourself
The install guide covers deploying your own copy, other hosts, and what to do when something goes wrong.
A static page with no framework, no bundler and no dependencies. The ES modules run the same in the browser and in Node, which is how the tests run.
index.html the page, the landing and the Content-Security-Policy
src/taxonomy.js the classification rules: edit here when a field is wrong
src/classify.js headline -> role, company, seniority, field
src/csv.js CSV reading, including Excel's encoding and wrong-file detection
src/build.js rows -> the graph (shared by Node and the browser)
src/ask.js question -> filter -> ranked shortlist, no model involved
src/graph.js the 3D scene: nodes, links, colour, camera
src/palette.js generated colours for every field
src/labels.js field labels projected from 3D
src/highlight.js the marker that locks onto a found person
src/logos.js employer logos, when you have fetched them
src/dom.js the small DOM helpers every UI module shares
src/ui.js the control panel, tooltip and status line
src/overview.js the network overview at the top of the panel
src/askui.js the question box and its answer panel
src/detail.js the person and employer panels
src/upload.js the landing page, the drop and the column mapper
src/store.js IndexedDB: your graph, employer facts and research briefs
src/llm.js the optional Anthropic calls, with your key
src/enrich.js employer names -> headquarters and organisation type
src/askllm.js question -> extra filter constraints
src/research.js one person -> a sourced brief, on a button only
src/enrichui.js the Settings sheet
src/main.js boot: find a graph or show the landing, then wire it all
mcp/server.mjs the MCP server: JSON-RPC over stdio, six read-only tools
mcp/network.mjs what those tools do, over the same build and ask modules
mcp/icon.png the Claude Desktop extension's icon
scripts/ the dev server, the data build, logos and the bundler
test/ node:test, no framework
Built on 3d-force-graph.
See CONTRIBUTING.md. The most useful change is to
src/taxonomy.js: it is wrong in ways only someone with a different network
can see. If your field comes out as "Other", that is the file to fix.
MIT. See LICENSE.
Network Constellation is not affiliated with or endorsed by LinkedIn.