{"id":26902324,"url":"https://github.com/qiuhaotc/codeindex","last_synced_at":"2025-04-01T09:18:46.016Z","repository":{"id":47321560,"uuid":"233228333","full_name":"qiuhaotc/CodeIndex","owner":"qiuhaotc","description":"A Code Index Searching Tools Based On  Lucene.Net","archived":false,"fork":false,"pushed_at":"2025-03-18T14:54:50.000Z","size":7625,"stargazers_count":43,"open_issues_count":0,"forks_count":17,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-18T15:47:10.248Z","etag":null,"topics":["asp-net-core","blazor","csharp","full-text-search","fulltext-indexes","fulltext-search","fulltextsearch","lucene","searching"],"latest_commit_sha":null,"homepage":"","language":"C#","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/qiuhaotc.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}},"created_at":"2020-01-11T12:29:12.000Z","updated_at":"2025-03-18T14:54:48.000Z","dependencies_parsed_at":"2024-07-28T09:45:04.290Z","dependency_job_id":null,"html_url":"https://github.com/qiuhaotc/CodeIndex","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qiuhaotc%2FCodeIndex","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qiuhaotc%2FCodeIndex/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qiuhaotc%2FCodeIndex/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qiuhaotc%2FCodeIndex/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/qiuhaotc","download_url":"https://codeload.github.com/qiuhaotc/CodeIndex/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246612439,"owners_count":20805355,"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":["asp-net-core","blazor","csharp","full-text-search","fulltext-indexes","fulltext-search","fulltextsearch","lucene","searching"],"created_at":"2025-04-01T09:18:45.327Z","updated_at":"2025-04-01T09:18:46.005Z","avatar_url":"https://github.com/qiuhaotc.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Code Index\n\nA fast full-text searching tools based on Lucene.Net\n\n## Feature\n\n1. Support multiple indexes\n2. Auto monitoring indexed files changes\n3. Support various search (etc: fuzzy, wildcard, case-sensitive) on file content, name, location, extension\n4. Support Docker\n5. Support Visual Studio\n\n## Demonstrate Site\n\n[https://coderindex.azurewebsites.net/](https://coderindex.azurewebsites.net/)\n\n## Guide\n\n### Run On Your Local\n\n#### Config\n\nGo to CodeIndex.Server =\u003e appsettings.json\n\nLuceneIndex =\u003e To your local empty folder, this folder will be going to store the index files and configuration files.\n\nManagerUsers =\u003e Config the users name, id, password that can management the indexes.\n\n```json\n\"CodeIndex\": {\n  \"LuceneIndex\": \"D:\\\\TestFolder\\\\Index\",\n  \"IsInLinux\": \"false\",\n  \"MaximumResults\": 10000,\n  \"ManagerUsers\": [\n    {\n      \"Id\": 1,\n      \"UserName\": \"Admin\",\n      \"Password\": \"CodeIndex\"\n    }\n  ]\n}\n```\n\n#### Run Server\n\nSet CodeIndex.Server as the start up project, compile the project\n\nRun it via visual studio or bash\n\n```bash\ndotnet CodeIndex.Server.dll --urls \"http://:5000;https://:5001\"\n```\n\n#### Config Indexes\n\nIn this page, you can add/remove/delete and config the index folder you want to monitoring and searching.\n\n![Config Indexes](https://raw.githubusercontent.com/qiuhaotc/CodeIndex/master/doc/ConfigAndSearching.gif)\n\n#### Doing Search\n\n##### Search By Files\n\nIt will return the matched infos with highlight in the whole file\n\n![Search By Files](https://raw.githubusercontent.com/qiuhaotc/CodeIndex/master/doc/SearchByFiles.gif)\n\n##### Search By Lines\n\nIt will return the matched infos with highlight and matched line number\n\n![Search By Lines](https://raw.githubusercontent.com/qiuhaotc/CodeIndex/master/doc/SearchByLines.gif)\n\n### Run With Docker\n\nSupport docker container, [Docker hub](https://hub.docker.com/r/qiuhaotc/codeindex)\n\n#### Docker Command Format\n\n```bash\ndocker pull qiuhaotc/codeindex\ndocker run -d --name codeindex -p 8080:8080 -v \"Your index folder\":/luceneindex -v \"Your code folder\":/monitorfolder -v \"Your logs folder\":/app/Logs -e CodeIndex__MonitorFolderRealPath=\"Your real folder path\" -e CodeIndex__ManagerUsers__0__UserName=\"Your Management User Name\" -e CodeIndex__ManagerUsers__0__Password=\"Your Management Password\" --restart=always qiuhaotc/codeindex\n```\n\n##### Example\n\n```bash\ndocker pull qiuhaotc/codeindex\ndocker run -d --name codeindex -p 8080:8080 -v /home/user/luceneindex:/luceneindex -v /home/user/codefolder:/monitorfolder -v /home/user/logs:/app/Logs -e CodeIndex__MonitorFolderRealPath=\"/home/user/codefolder\" -e CodeIndex__ManagerUsers__0__UserName=\"Test\" -e CodeIndex__ManagerUsers__0__Password=\"Dummy\" --restart=always qiuhaotc/codeindex\n```\n\nNotice: in the docker container, when add the index config, the monitor folder should replace the actual path to start with \"/monitorfolder\", like the actually path is \"/home/user/codefolder/mysourceA\", the monitor folder should be \"/monitorfolder/mysourceA\"\n\n### Search Extension For Visual Studio\n\n|Status|Value|\n|:----|:---:|\n|VS Marketplace|[![VS Marketplace](http://vsmarketplacebadge.apphb.com/version-short/qiuhaotc.CodeIndexExtension.svg)](https://marketplace.visualstudio.com/items?itemName=qiuhaotc.CodeIndexExtension)\n|VS Marketplace Downloads|[![VS Marketplace Downloads](http://vsmarketplacebadge.apphb.com/downloads/qiuhaotc.CodeIndexExtension.svg)](https://marketplace.visualstudio.com/items?itemName=qiuhaotc.CodeIndexExtension)\n|VS Marketplace Installs|[![VS Marketplace Installs](http://vsmarketplacebadge.apphb.com/installs-short/qiuhaotc.CodeIndexExtension.svg)](https://marketplace.visualstudio.com/items?itemName=qiuhaotc.CodeIndexExtension)\n\n#### Download Url\n\n[Code Index Extension](https://marketplace.visualstudio.com/items?itemName=qiuhaotc.CodeIndexExtension)\n\n#### Search Code\n\n1. Open the code index search window under: view =\u003e other window =\u003e code index search\n2. Config the service url to your own service\n3. Doing the search\n\n![Code Index Search Extension](https://raw.githubusercontent.com/qiuhaotc/CodeIndex/master/doc/UseExtension.gif)\n\n### Search Syntax\n\n#### Phase Query\n\nWhen Phase Query been ticked, we can search the content via the query like: str*ng abc, it will give the result such as \"string abc\", \"strdummyng abc\" as the search results, the results like \"abc string\" or \"stng abc\" won't return.\n\nIn Phase Query mode, currently only support wildcard matching for word like stri*, organi*tion\n\n![Phase Query Search](https://raw.githubusercontent.com/qiuhaotc/CodeIndex/master/doc/PhaseQuerySearch.gif)\n\nWhen Phase Quuery not been ticked, you can follow the sytax under [http://www.lucenetutorial.com/lucene-query-syntax.html](http://www.lucenetutorial.com/lucene-query-syntax.html) to doing the search\n\n#### Case-Sensitive\n\nWhen Case-Sensitive been ticked, we can search the content in case-sensitive mode. When search the content like String, it won't return the content that contains string\n\n## Misc\n\n|Status|Value|\n|:----|:---:|\n|Stars|[![Stars](https://img.shields.io/github/stars/qiuhaotc/CodeIndex)](https://github.com/qiuhaotc/CodeIndex)\n|Forks|[![Forks](https://img.shields.io/github/forks/qiuhaotc/CodeIndex)](https://github.com/qiuhaotc/CodeIndex)\n|License|[![License](https://img.shields.io/github/license/qiuhaotc/CodeIndex)](https://github.com/qiuhaotc/CodeIndex)\n|Issues|[![Issues](https://img.shields.io/github/issues/qiuhaotc/CodeIndex)](https://github.com/qiuhaotc/CodeIndex)\n|Docker Pulls|[![Downloads](https://img.shields.io/docker/pulls/qiuhaotc/codeindex.svg)](https://hub.docker.com/r/qiuhaotc/codeindex)\n|Release Downloads|[![Downloads](https://img.shields.io/github/downloads/qiuhaotc/CodeIndex/total.svg)](https://github.com/qiuhaotc/CodeIndex/releases)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqiuhaotc%2Fcodeindex","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fqiuhaotc%2Fcodeindex","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqiuhaotc%2Fcodeindex/lists"}