A semantic search engine for source code https://bitshift.benkurtovic.com/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Ben Kurtovic 92db937a31
Merge pull request #81 from earwig/dependabot/maven/parsers/java/junit-junit-4.13.1
5 months ago
bitshift Fix initing lexer. 6 years ago
docs Update some documentation. 7 years ago
parsers Bump junit from 4.11 to 4.13.1 in /parsers/java 6 months ago
static Fix sitemap URL. 6 years ago
templates Embed our NYTM demo video in the about page. 6 years ago
test API documentation, fixes, support not highlighting (closes #56). 6 years ago
.gitignore parsing.jar, exclude. 6 years ago
DATABASE.sh Add database script hints 1 year ago
LICENSE Fix names in license. 7 years ago
README.md Add links for non-developers to README. 6 years ago
app.py API documentation, fixes, support not highlighting (closes #56). 6 years ago
gunicorn.cfg Update config file for violent horned mammals. 6 years ago
setup.py Rewrite much of the indexer to use GitPython. 6 years ago



bitshift is a semantic search engine for source code developed by Benjamin Attal, Ben Kurtovic, and Severyn Kozak. This README is intended for developers only. For a user overview of the project:


  • master: working, tested, version-numbered code - no direct commits; should only accept merges from develop when ready to release
  • develop: integration branch with unreleased but mostly functional code - direct commits allowed but should be minor
  • feature/*: individual components of the project with untested, likely horribly broken code - branch off from and merge into develop when done


bitshift uses SASS for styling; compile the stylesheets to CSS with sass --watch static/sass/:static/css.


To build documentation, run make html from the docs subdirectory. You can then browse from docs/build/html/index.html.

To automatically update the API documentation structure (necessary when adding new modules or packages, but not when adding functions or changing docstrings), run sphinx-apidoc -fo docs/source/api bitshift from the project root. Note that this will revert any custom changes made to the files in docs/source/api, so you might want to update them by hand instead.


  • Update __version__ in bitshift/__init__.py, version in setup.py, and version and release in docs/conf.py.