{"id":13998420,"url":"https://github.com/julien040/hn-recommendation-api","last_synced_at":"2025-04-14T23:32:01.733Z","repository":{"id":217342701,"uuid":"653212346","full_name":"julien040/hn-recommendation-api","owner":"julien040","description":"A recommendation system for Hacker News. Get the most similar posts for a given URL","archived":false,"fork":false,"pushed_at":"2023-06-23T16:11:26.000Z","size":147,"stargazers_count":81,"open_issues_count":2,"forks_count":9,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-28T12:21:13.288Z","etag":null,"topics":["embedding","embeddings","faiss","hacker-news","hnsw","nextjs","openai","recommendation"],"latest_commit_sha":null,"homepage":"https://hn-recommend.julienc.me","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/julien040.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-06-13T15:59:18.000Z","updated_at":"2025-03-23T10:15:24.000Z","dependencies_parsed_at":"2024-01-15T22:24:04.162Z","dependency_job_id":null,"html_url":"https://github.com/julien040/hn-recommendation-api","commit_stats":null,"previous_names":["julien040/hn-recommendation-api"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/julien040%2Fhn-recommendation-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/julien040%2Fhn-recommendation-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/julien040%2Fhn-recommendation-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/julien040%2Fhn-recommendation-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/julien040","download_url":"https://codeload.github.com/julien040/hn-recommendation-api/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248978940,"owners_count":21192877,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["embedding","embeddings","faiss","hacker-news","hnsw","nextjs","openai","recommendation"],"created_at":"2024-08-09T19:01:39.326Z","updated_at":"2025-04-14T23:32:01.495Z","avatar_url":"https://github.com/julien040.png","language":"TypeScript","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"readme":"# hn-recommendation-api\n\nThis project provides a recommendation engine for Hacker News posts based on their content. It utilizes the concept of embeddings to compute the similarity between posts. Specifically, the text of each post is extracted using the Diffbot API, and embeddings are computed using the OpenAI API with the \"text-embedding-ada-002\" model. An HNSW index is built using Faiss to quickly find the nearest items.\n\n## Components\n\nThe project consists of three parts:\n\n-   `root`: The API using Python and FastAPI.\n-   `next`: The website using Next.JS and Typescript.\n-   `createIndex.piynb`: The Jupyter notebook to convert the dataset to a Faiss HNSW index.\n\n## Dataset\n\nThe dataset used to train the embeddings is available on Kaggle: https://www.kaggle.com/datasets/julien040/hacker-news-openai-embeddings\n\n## Blog Post\n\nA blog post about extracting the embeddings of Hacker News posts to get a recommendation engine is available at https://julienc.me/articles/Extract_embeddings_Hacker_News_article\n\n## Contact\n\nFor any questions or API access requests, please contact me at contact[at]julienc.me.\n\n## Disclaimer\n\nThis project is not affiliated with Y Combinator or Hacker News.\n\n## License\n\nThis project is licensed under the MIT License.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjulien040%2Fhn-recommendation-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjulien040%2Fhn-recommendation-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjulien040%2Fhn-recommendation-api/lists"}