[1] https://github.com/nvm-sh/nvm Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
1.7 KiB
Development Quickstart
SearXNG loves developers, just clone and start hacking. All the rest is done for you simply by using make <makefile>
.
git clone https://github.com/searxng/searxng.git searx
Here is how a minimal workflow looks like:
- start hacking
- run your code:
make run
- test your code:
make test
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 "how to contribute
" guideline.
If you implement themes, you will need to setup a make node.env
once:
make node.env
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:: sh
make themes.simple
If you finished your tests you can start to commit your changes. To separate the modified source code from the build products first run:
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:
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:
make static.build.drop