Show HN: ChatJC – chatbot for resume/LinkedIn/portfolio info
3 points
by ogou
3 days ago
| 1 comment
| joshuacurry.dev
| HN
ogou
3 days ago
[-]
A RAG-powered chatbot API that answers questions about a developer's professional background. I built it with Hono, LangChain, Mistral AI, and SQLite. I serve it on a Svelte site for my dev portfolio, but it works as a general API as well.

I dumped all my job background info into it: resumes, LinkedIn, cover letter snippets, GitHub repos, recommendations, projects, languages, volunteering, personal work, and even the story of building the thing itself.

It uses structured markdown files I created from all that as a RAG context. It doesn't automatically ingest LinkedIn or other services.

Here it is live:

https://joshuacurry.dev/

Here is the anonymized and secured API repo for general release:

https://github.com/lucidbeaming/chatjc

reply
himmi-01
3 days ago
[-]
Thanks for open-sourcing it . Curious, how does it get LinkedIn data? From scraping or API call?
reply
ogou
3 days ago
[-]
Manually. I went to my profile and saved 4 key pages as html. Then Claude converted those to markdown. Took less than 5 minutes. Automating that would have been more trouble than it's worth. The LinkedIn API is fairly useless unless you're in their partner program. Scraping could have gotten my account blocked because ToS violation. That core information rarely changes so it doesn't need to be dynamically imported anyway.
reply
himmi-01
2 days ago
[-]
Are you saying that the partner program takes time and not worth integrating ? I was planning to gather data of users via LinkedIn oauth, haven't started it, but happy to hear your experience
reply
ogou
1 day ago
[-]
It's more than time. That program requires explicit authorization from them. It's designed for larger corporate integrations, not developer experiments. I seriously I doubt I would get approved even if I went through all the paperwork. It's not just a matter of just signing up for an API key.

As for your plan, gathering user data is probably the main thing they want to prevent.

reply