123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. Development Quickstart
  2. ----------------------
  3. This quickstart guide gets your environment set up with searx. Furthermore, it gives a
  4. short introduction to the new manage.sh script.
  5. How to setup your development environment
  6. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  7. First, clone the source code of searx to the desired folder. In this case the source
  8. is cloned to ~/myprojects/searx. Then create and activate the searx-ve
  9. virtualenv and install the required packages using manage.sh.
  10. .. code:: sh
  11. cd ~/myprojects
  12. git clone https://github.com/asciimoo/searx.git
  13. cd searx
  14. virtualenv searx-ve
  15. . ./searx-ve/bin/activate
  16. ./manage.sh update_dev_packages
  17. How to run tests
  18. ~~~~~~~~~~~~~~~~
  19. Tests can be run using the manage.sh script.
  20. Following tests and checks are available:
  21. - Unit tests
  22. - Selenium tests
  23. - PEP8 validation
  24. - Unit test coverage check
  25. For example unit tests are run with the command below:
  26. .. code:: sh
  27. ./manage.sh unit_tests
  28. For further test options, please consult the help of the manage.sh script.
  29. How to compile styles and javascript
  30. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  31. How to build styles
  32. ^^^^^^^^^^^^^^^^^^^
  33. Less is required to build the styles of searx. Less can be installed using either NodeJS or Apt.
  34. .. code:: sh
  35. sudo apt-get install nodejs
  36. sudo npm install -g less
  37. OR
  38. .. code:: sh
  39. sudo apt-get install node-less
  40. After satisfying the requirements styles can be build using manage.sh
  41. .. code:: sh
  42. ./manage.sh styles
  43. How to build the source of the oscar theme
  44. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  45. Grunt must be installed in order to build the javascript sources. It depends on NodeJS, so first
  46. Node has to be installed.
  47. .. code:: sh
  48. sudo apt-get install nodejs
  49. sudo npm install -g grunt-cli
  50. After installing grunt, the files can be built using the following command:
  51. .. code:: sh
  52. ./manage.sh build_grunt