### Goals
- [x] Do research about potential CLI tools for #NitroDigest
### Notes
- [Click](https://click.palletsprojects.com/en/stable) looks like solid option for implementing CLI
- what is funny for me, I read 80% of their docs, watched one movie on YouTube, and I feel like I could start development
- But I need to hold my #nitro horses, and read [guidelines for creating CLI tools](https://clig.dev) before I write any line of code
- also I wonder what architecture of solution should be. CLI as separate package? All in one? DDD?
- I will skip architecture part, I just do a prototype and want to make it work, release and gather feedback
- Interesting #openSource tool for setting appointments:
- [https://github.com/calcom/cal.com]
- I like readme in the repo
- read Python tutorial, learned about exceptions in Python
- I received my Pinephone Pro Explorer and started configuring it
### Challenges & solutions
- installed Ubuntu Touch on Pinephone. it was impossible to make calls. After putting the phone to sleep and turning it on again, the phone stopped seeing the SIM card
- read many sources and didn't find a workaround. Decided to install Mobian and it works correctly
### Useful snippets & resources
- [https://python-poetry.org]
- tools for CLI:
- [https://click.palletsprojects.com/en/stable]
- [https://www.youtube.com/watch?v=FWacanslfFM]
- tools for config management
- [https://www.youtube.com/watch?v=FWacanslfFM]
- guidelines for creating CLI tools:
- [https://clig.dev]
- ads for developer: [https://www.ethicalads.io/?ref=rtd-sidebar]
- It's possible to use `else` in the `try..except` statement in #Python
```python
try:
my_file = open('testfile.txt', 'r')
except OSError as e:
print(f"File error: {e}")
else:
data = my_file.read()
print(data)
my_file.close()
```