Ponysearch/docs/dev/quickstart.rst

83 lines
2.2 KiB
ReStructuredText
Raw Normal View History

2016-04-21 13:15:04 +02:00
.. _devquickstart:
======================
2016-02-01 21:28:13 +01:00
Development Quickstart
======================
2016-02-01 21:28:13 +01:00
.. _npm: https://www.npmjs.com/
.. _Node.js: https://nodejs.org/
.. sidebar:: further read
- :ref:`makefile`
- :ref:`buildhosts`
SearXNG loves developers; Developers do not need to worry about tool chains, the
usual developer tasks can be comfortably executed via :ref:`make <makefile>`.
Don't hesitate, just clone SearXNG's sources and start hacking right now ..
2016-02-01 21:28:13 +01:00
.. code:: bash
2016-02-01 21:28:13 +01:00
git clone https://github.com/searxng/searxng.git searxng
2016-02-01 21:28:13 +01:00
Here is how a minimal workflow looks like:
1. *start* hacking
2. *run* your code: :ref:`make run`
3. *format & test* your code: :ref:`make format.python` and :ref:`make test`
2016-02-01 21:28:13 +01:00
If you think at some point something fails, go back to *start*. Otherwise,
choose a meaningful commit message and we are happy to receive your pull
request. To not end in *wild west* we have some directives, please pay attention
to our ":ref:`how to contribute`" guideline.
2016-02-01 21:28:13 +01:00
.. sidebar:: further read
2016-02-01 21:28:13 +01:00
- :ref:`make nvm`
- :ref:`make themes`
2016-02-01 21:28:13 +01:00
If you implement themes, you will need to setup a :ref:`Node.js environment
<make node.env>`: ``make node.env``
2016-04-21 13:15:04 +02:00
Before you call *make run* (2.), you need to compile the modified styles and
JavaScript: ``make themes.all``
Alternatively you can also compile selective the theme you have modified,
e.g. the *simple* theme.
.. code:: bash
make themes.simple
.. tip::
To get live builds while modifying CSS & JS use: ``LIVE_THEME=simple make run``
.. sidebar:: further read
- :ref:`make static.build`
If you finished your *tests* you can start to commit your changes. To separate
the modified source code from the build products first run:
.. code:: bash
make static.build.restore
This will restore the old build products and only your changes of the code
remain in the working tree which can now be added & commited. When all sources
are commited, you can commit the build products simply by:
.. code:: bash
make static.build.commit
Commiting the build products should be the last step, just before you send us
your PR. There is also a make target to rewind this last build commit:
.. code:: bash
make static.build.drop