searchcode server powerful code search in your cloud

"Developer tools are the the foundation of the modern world"

The modern world is run by software. Software written by you or your team. To produce the best software you need the best possible tools, powerful editors, powerful desktops and powerful software. The better the tools the better the software and the better your outcomes.

searchcode server works in tandem with your source control system, indexing thousands of repositories and files allowing you and your developers to quickly find and reuse code across teams.

Your code is now instantly searchable while behind the scene searchcode is checking code out of your source control, analysing it and presenting the results to you through a clean web interface.

Just Show Me The Downloads!

Save time and money

Promotes reuse of existing code and ideas by allowing developers across teams to see how problems were already solved.

Easy to use

Powerful search used by millions of developers around the world packaged up and ready for use in your cloud or data center.


Based on the same code that powers and scales to many thousands of repositories even on modest servers.

searchcode server why?

searchcode is a source code search engine for all developers.

"Developer tools are the the foundation of the modern world"

A developer's productivity relies on being able to find, understand and reuse code as quickly as possible. Code written years ago has value if used or learnt from. Your existing code is your investment. Use searchcode server to find it and retain its value.

What searchcode server is good at:

searchcode server is an add-on product to your existing source code managment system such as Stash/Bitbucket/Gitlab/Github.

The time taken to write code can be an investment but only if you use or learn from it. You can use searchcode server to find that code easily and recoup your investment.

What searchcode server does:

searchcode server indexes HEAD of any branch of your git or svn repositories.

It then allows you to search over this code quickly and filter by repositories and languages. A partial list of features and the roadmap is included below.

What searchcode server needs:

Designed to be lean searchcode server requires very little.

All searchcode server really needs is any Linux/Windows/BSD system the Java 8 runtime envrionment and enough disk space to store your code and the resulting index. It scales from tiny Atom powered servers to beefy Xeon systems

Install in minutes, looks after itself.

You own your data, searchcode server is not a SAAS product or a cloud product, download and install it on your own server.

You can install searchcode server in minutes. Expensive consultants that toil away for weeks are not required to setup or configure it. No external products or tools are required beyond the Java Runtime Environment. Even better, it maintains itself. Beyond the inital install and adding of repositories to index almost no maintenance is required. After all, your teams have better things to do.

Don't listen to us, read some testimonials.

I wanted to see an example of bluebird promisify and found exactly the example code I needed. The search result and full code views are awesome. An invaluable tool to share code between teams. A great product!

I was looking for an original piece of code which had been copied to another site and used it and it worked perfectly!

I tracked down some code I knew I wrote about about a year ago. We have hundreds of repositories and it literally saved me from hours of busywork. An excellent product.

Own your data, searchcode server is not a SAAS or cloud product, download and install it on your own server.

What you actually get with a paid plan

All plans include a full downloadable version of searchcode server with the ability to change the icon and modify other look and feel elements allowing you brand your instances. Support plans also get a direct support channel via email to for the support term and a promise to investigate any issues as promptly as possible. The software comes with a lifetime licence to install use searchcode server internally on as many instances as you like. Finally you will get direct emails letting you know when updates are available and links to the update for the length of the support period.

searchcode server community edition

Strapped for cash? Try before you buy? No problem. The community edition is just as good but you can't change the look and feel and don't get any support.
Download Community Edition. You can also compile your own version under the fair source licence .

searchcode server full version (no support)

Want the full edition but don't need support? Then this is the version for you. You get the full editon with all the goodies, but no support.

Buy now $99

searchcode server (2 years of support & updates)

The Premium version. Everything the full version has, but you get support for 2 years, free upgrades during this period and you can make your own feature requests.

Buy now $699

*Requirements: A GNU/Linux/Windows/BSD machine running the Java 8 runtime. Everything else is configured out of the box for you.

Our Return Policy: If you are not satisfied neither are we. You may return the product for a full refund within 30 days, no questions asked. If you are not incredibly happy with your purchase we don't want your money.

Source Code?

We understand that you may want to check the source code before allowing searchcode server to look at your most valued assets. So you want to see the source? No problem, searchcode server is licenced under the fair source licence, and you are allowed to view, modify and use the source code for searchcode server for up-to 5 users. View the source at github

Current release 1.3.x change-log

MD5 - 25ce027a379754b72f5d171d13fbc6c1
SHA1 - 681b3c03120ebce81eaa63dc49d105fb01c6727f
20 March 2017 - 1.3.8
 - Fix bug where if only_localhost is set to false but log_indexed is set to true the CSV will not be written
 - Small CSS display issues on search pages
 - Resolve issues with some unit tests being inconsistent
 - Setup CI pipeline to shake out issues and IWOMM
 - New admin pages which expose information in a better way
 - File classification moved into JSON database similar to OWASP
 - Improved matching of found lines
 - Addition of folder blacklist to exclude folders from being indexed
 - Addition of repository overview page to list indexed repositories and status
 - Add search button to repository overview to search current repository
 - Improved matching of filenames

01 February 2017 - 1.3.7
 - Fix display bug where file details in search was on newline
 - Slight improvements to documentation

31 January 2016 - 1.3.6
 - Add job to scan repositories updating the spelling corrector
 - Add logic to split interesting characters such as Chinese/Korean/Japanese to allow searching
 - Fix XSS on admin log page
 - Fix XSS on admin repo page
 - Fix bug where unable to delete repositories on admin page with special characters in name
 - Running jobs now displayed on admin page
 - Repository overview page added to get overview of a repository

19 December 2016 - 1.3.5
 - Fix only_localhost to really only listen localhost not drop connections
 - Add SHA512 hmac as option for signed API requests
 - Resolve XSS vulnerability issue
 - Add logic to deal with immutable files by moving to trash folder
 - Add log to display most recent search results
 - Resolve several memory leak issues
 - Modify logic to allow matching URL_CONFIG in App.URL_CONFIG.toString()
 - Modify logic to allow matching install_something in :install_something
 - Logging level of OFF now does not even attempt to create log file
 - Resolve uncaught exception when writing log
 - Close resource/memory leak in opened files
 - Changed removal logic for removed files to be less aggressive
 - Fix potential overflow for search query count (however unlikely that is)
 - Fix race conditions with logging

21 November 2016 - 1.3.4
 - Refactor index logic to resolve removal bugs
 - Optimise memory usage of file repositories
 - Fix headers for API responses
 - Change admin fields from disabled to readonly to allow copy paste
 - Fix bug where sqlite_file property was being ignored

02 November 2016 - 1.3.3
 - Add log level selection to admin logs page
 - Can now search across filenames and paths
 - Slight performance improvements for indexing
 - Better error reporting for repository errors
 - Better guessing of file encoding type
 - White/Black list of file extensions
 - Fix bug where OWASP results not escaped
 - Add logout button to admin sections
 - Refactor JavaScript and fix bugs
 - Additional properties for controlling background threads
 - Fix off by 1 error where some results would not be shown
 - Admin can now selectively pause indexing
 - Ability to log out all indexed and excluded files to CSV
 - Set file rotation to have 10x10mb files by default but controlled through property
 - Add backoff setting to settings page to control CPU usage
 - Improve memory usage for large file repositories
 - Whitelist trumps minified logic
04 October 2016 - 1.3.2
 - Improve matching of certain strings such as E.G. linux2.7.4 or i386
 - Fix bug with binary file checking
27 September 2016 - 1.3.1
 - Fix potential performance issue in spelling corrector with long strings
 - Fix potential XSS issue with HTML page
 - Line numbers now appear on code result pages
 - Logging directory not configurable via properties
 - Symlinks path traversal issue resolved
 - Highlight.js now lazy loads
 - Highlight limit now configrable through properties
 - OWASP line number display correction
 - Header links resolved in some cases

20 September 2016 - 1.3.0
 - Filters now apply instantly when clicked option is toggleable
 - OWASP checking on code result pages based on OWASP code crawler
 - Log Tail screen added to Admin
 - Add server date time output to admin page
 - Add rebuild all button to Admin page
 - Fix bug where clicking deep links on HTML page would break
 - Modify file links to use unique codeid to avoid click through issues
 - Improve indexing performance by intelligently calculating MD5
 - Add ability to index arbitary file system locations
 - Add API endpoint to force reindex