{"id":19000466,"url":"https://github.com/typesense/showcase-linux-commits-search","last_synced_at":"2025-10-14T15:08:00.340Z","repository":{"id":48050795,"uuid":"311415289","full_name":"typesense/showcase-linux-commits-search","owner":"typesense","description":"Instantly search 1M Linux Kernel Commit Messages using Typesense Search (an open source alternative to Algolia / ElasticSearch) ⚡ 💻 🔍","archived":false,"fork":false,"pushed_at":"2025-02-05T00:53:47.000Z","size":1649,"stargazers_count":47,"open_issues_count":1,"forks_count":7,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-10-14T15:07:00.066Z","etag":null,"topics":["git","instantsearch","linux","linux-kernel","typesense","typesense-showcase"],"latest_commit_sha":null,"homepage":"https://linux-commits-search.typesense.org/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/typesense.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-11-09T17:33:24.000Z","updated_at":"2025-09-11T17:25:12.000Z","dependencies_parsed_at":"2025-02-05T01:28:29.649Z","dependency_job_id":"eb0e65d4-da04-431f-b9b1-30007b7c22c4","html_url":"https://github.com/typesense/showcase-linux-commits-search","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/typesense/showcase-linux-commits-search","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typesense%2Fshowcase-linux-commits-search","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typesense%2Fshowcase-linux-commits-search/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typesense%2Fshowcase-linux-commits-search/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typesense%2Fshowcase-linux-commits-search/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/typesense","download_url":"https://codeload.github.com/typesense/showcase-linux-commits-search/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typesense%2Fshowcase-linux-commits-search/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279019293,"owners_count":26086709,"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","status":"online","status_checked_at":"2025-10-14T02:00:06.444Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["git","instantsearch","linux","linux-kernel","typesense","typesense-showcase"],"created_at":"2024-11-08T18:07:18.952Z","updated_at":"2025-10-14T15:08:00.325Z","avatar_url":"https://github.com/typesense.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Linux Commit History Search\n\nThis is a demo that showcases some of Typesense's features using 1 Million commit messages from the Linux kernel [repo](https://github.com/torvalds/linux).\n\nView it live here: https://linux-commits-search.typesense.org/\n\n# Tech Stack\n\nThis search experience is powered by Typesense which is a fast, open source typo-tolerant search-engine. It is an open source alternative to Algolia and an easier-to-use alternative to ElasticSearch.\n\nThe dataset was extracted by running `git log` on the Linux Kernel git repo.\n\nThe dataset is ~950MB on disk, with ~1 million records. It took 45 minutes to index this dataset on a 3-node Typesense cluster with 4vCPUs per node and the index was ~3GB in RAM.\n\nThe app was built using the [Typesense Adapter for InstantSearch.js](https://github.com/typesense/typesense-instantsearch-adapter) and is hosted on S3, with CloudFront for a CDN.\n\nThe search backend is powered by a geo-distributed 3-node Typesense cluster running on [Typesense Cloud](https://cloud.typesense.org), with nodes in Oregon, Frankfurt and Mumbai.\n\n\n## Repo structure\n\n- `src/` and `index.html` - contain the frontend UI components, built with \u003ca href=\"https://github.com/typesense/typesense-instantsearch-adapter\" target=\"_blank\"\u003eTypesense Adapter for InstantSearch.js\u003c/a\u003e\n- `scripts/` - contains the scripts to extract, transform and index the git log data into Typesense.\n\n## Development\n\n1. Create a `.env` file using `.env.example` as reference.\n\n2. Extract commit history\n\n  ```shell\n  mkdir data/linux\n  cd data/linux\n  git checkout https://github.com/torvalds/linux\n  yarn extractCommitHistory:merges\n  yarn extractCommitHistory:nonMerges\n  ```\n\n3. Transform and index the data\n  ```shell\n  bundle install\n  gzip data/git-log-output\n  yarn transformDataset\n  yarn run typesenseServer\n  UPDATE_COLLECTION_ALIAS=true yarn index\n  ```\n\n4. Install dependencies and run the local server:\n\n```shell\nyarn\nyarn start\n```\n\nOpen http://localhost:3000 to see the app.\n\n## Deployment\n\nThe app is hosted on S3, with Cloudfront for a CDN.\n\n```shell\nyarn build\nyarn deploy\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftypesense%2Fshowcase-linux-commits-search","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftypesense%2Fshowcase-linux-commits-search","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftypesense%2Fshowcase-linux-commits-search/lists"}