# Some useful stuff ## GIT - Command line tool: https://git-scm.com/ - Useful commands: https://www.syncfusion.com/blogs/post/top-10-git-commands-every-developer-should-know.aspx - Nice GUI: https://www.sourcetreeapp.com/ ## Python ### Python Virtual Environments Create Virtual Environment: ```python -m venv .venv``` Activate VE: - ```.venv/Scripts/activate.bat``` (Win CMD) - ```.venv/Scripts/activate.ps1``` (Win PS) - ```source .venv/bin/activate``` (Linux/mac bash) Deactivate VE: - ```.venv/Scripts/deactivate.bat``` (Win CMD) - ```.venv/Scripts/deactivate.ps1``` (Win PS) - ```deactivate``` (Linux/mac bash) Install requirements.txt: ```pip install -r requirements.txt``` Freeze requirements ```pip freeze > requirements.txt``` ### Python Flask https://flask.palletsprojects.com/en/2.2.x/quickstart/#a-minimal-application ```flask --app python-flask-server run``` to run server on localhost ```flask --app python-flask-server run --host=192.168.1.x``` to define own host To send requests to your service, https://www.postman.com/downloads/ is a good application. ## MQTT - https://www.youtube.com/watch?v=EIxdz-2rhLs&ab_channel=RuiSantos - MQTT Explorer: https://mqtt-explorer.com/ - MQTT Broker: https://randomnerdtutorials.com/how-to-install-mosquitto-broker-on-raspberry-pi/ - Maybe this tool could be helpful to manage the logic: https://nodered.org/ - how we can use MQTT with Arduino IDE: https://randomnerdtutorials.com/esp32-mqtt-publish-subscribe-arduino-ide/ ## Matter - https://github.com/project-chip/connectedhomeip - https://blog.espressif.com/announcing-matter-previously-chip-on-esp32-84164316c0e3 ## Git Command line Order to Push: - ```git pull origin``` - ```git add .``` - ```git commit -m "message"``` - ```git push origin```