# OpenGrok > Self-hosted source code search and cross-reference engine with web UI, REST API, and SCM history support. OpenGrok is an open-source, self-hosted code search and cross-reference engine. It indexes large mono-repos or many projects and provides fast full-text, definition/identifier, path, and history search via a web UI and REST API. It integrates with Universal Ctags for language-aware cross-references and understands history from many SCMs (Git, Mercurial, Subversion, Perforce, ClearCase, and more). Deploy it as a Java webapp (WAR) on Tomcat/GlassFish, point it at your source roots, and use the indexer to keep results fresh with incremental updates. Features include syntax-highlighted browsing with x-refs, per-project configuration, a type-ahead suggester, blame/annotate views, downloadable files, and Docker-based setups for quick starts. Licensed under CDDL and actively maintained by Oracle and the community. ## Features - Full-text, definition, identifier, path, and history search - Language-aware cross-references via Universal Ctags - Incremental indexing and per-project configuration - Web UI with syntax highlighting and quick in-file navigation - SCM history views: annotate/blame, diffs, directory-level changes - REST API for programmatic search and integration - Type-ahead search suggester - Docker image and OS-specific helper scripts - Authentication/authorization plugin framework - Lucene-based indexing with tunable performance options ## Integrations Universal Ctags, Git, Mercurial, Subversion, Perforce, ClearCase, Bazaar, Monotone, AccuRev, Razor, RCS, SCCS, Teamware, Apache Tomcat, GlassFish, Docker ## Platforms LINUX, MACOS, WINDOWS, WEB, API ## Pricing Open Source ## Version 1.14.2 ## Links - Website: https://oracle.github.io/opengrok/ - Documentation: https://github.com/oracle/opengrok/wiki/how-to-setup-opengrok - Repository: https://github.com/oracle/opengrok - EveryDev.ai: https://www.everydev.ai/tools/opengrok