Skip to content

Commit ce40b7a

Browse files
committed
update README.md
1 parent 0bb3576 commit ce40b7a

File tree

1 file changed

+25
-16
lines changed

1 file changed

+25
-16
lines changed

README.md

+25-16
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,11 @@
2626
<li><a href="#how-to-feed-database">How to feed database</a></li>
2727
<li><a href="#rainbow-logs-with-rich">Rainbow logs with rich</a></li>
2828
<li><a href="#setup-user-auth">Setup user auth</a></li>
29-
<li><a href="#local-development-with-poetry">Local development with poetry</a></li>
29+
<li><a href="#setup-local-env-with-uv">Setup local development with uv</a></li>
3030
<li><a href="#import-xlsx-files-with-polars-and-calamine">Import xlsx files with polars and calamine</a></li>
3131
<li><a href="#worker-aware-async-scheduler">Schedule jobs</a></li>
3232
<li><a href="#smtp-setup">Email Configuration</a></li>
33+
<li><a href="#uv-knowledge-and-inspirations">UV knowledge and inspirations</a></li>
3334
</ul>
3435
</li>
3536
<li><a href="#acknowledgments">Acknowledgments</a></li>
@@ -44,7 +45,7 @@
4445
This example demonstrates the seamless integration of [FastAPI](https://fastapi.tiangolo.com/), a modern, high-performance web framework,
4546
with [Pydantic 2.0](https://github.com/pydantic/pydantic), a robust and powerful data validation library.
4647
The integration is further enhanced by the use of [SQLAlchemy ORM](https://www.sqlalchemy.org/), a popular and feature-rich Object-Relational Mapping tool,
47-
and [PostgreSQL16](https://www.postgresql.org/about/news/postgresql-16-released-2715/) relational database.
48+
and [PostgreSQL17](https://www.postgresql.org/docs/17/release.html) relational database.
4849

4950
The entire stack is connected using the [asyncpg](https://github.com/MagicStack/asyncpg) Database Client Library,
5051
which provides a robust and efficient way to interact with PostgreSQL databases in Python,
@@ -56,7 +57,7 @@ allowing for the rapid development of APIs with Python 3.8+.
5657

5758
FastAPI has received significant recognition in the industry, including a review on thoughtworks Technology Radar in April 2021,
5859
where it was classified as a Trial technology, with comments praising its performance, ease of use,
59-
and features such as API documentation using OpenAPI. Additionally, FastAPI was recognized in the Python Developers Survey 2022 Results,
60+
and features such as API documentation using OpenAPI. Additionally, FastAPI was recognized in the Python Developers Survey 2023 Results,
6061
conducted by the Python Software Foundation and JetBrains, where it was reported that 1 in 4 Python developers use FastAPI,
6162
with a 4 percentage point increase from the previous year.
6263

@@ -86,7 +87,8 @@ To build , run and test and more ... use magic of make help to play with this pr
8687
4. make docker-feed-database
8788
```
8889

89-
90+
### Adjust make with just
91+
[//]: # (TODO: switch form make to just)
9092
<p align="right">(<a href="#readme-top">back to top</a>)</p>
9193

9294
### How to feed database
@@ -126,15 +128,11 @@ he following steps were taken to integrate [rich](https://github.com/Textualize/
126128

127129
Setup user authentication with JWT and Redis as token storage.
128130

129-
### Local development with poetry
130-
131-
```shell
132-
pyenv install 3.13 && pyenv local 3.13
133-
```
131+
### Setup local env with uv
134132
```shell
135-
poetry install --with dev
133+
uv sync
134+
source .venv/bin/activate
136135
```
137-
Hope you enjoy it.
138136

139137
### Import xlsx files with polars and calamine
140138
Power of Polars Library in data manipulation and analysis.
@@ -165,6 +163,16 @@ It is implemented as a singleton to ensure that only one SMTP connection is main
165163
throughout the application lifecycle, optimizing resource usage.
166164

167165

166+
<p align="right">(<a href="#readme-top">back to top</a>)</p>
167+
168+
### UV knowledge and inspirations
169+
- https://docs.astral.sh/uv/
170+
- https://hynek.me/articles/docker-uv/
171+
- https://thedataquarry.com/posts/towards-a-unified-python-toolchain/
172+
- https://www.youtube.com/watch?v=ifj-izwXKRA&t=760s > UV and Ruff: Next-gen Python Tooling
173+
- https://www.youtube.com/watch?v=8UuW8o4bHbw&t=1s > uv IS the Future of Python Packaging! 🐍📦
174+
175+
168176
<p align="right">(<a href="#readme-top">back to top</a>)</p>
169177

170178
## Acknowledgments
@@ -206,6 +214,7 @@ I've included a few of my favorites to kick things off!
206214
- **[OCT 16 2024]** apscheduler added to project :clock1:
207215
- **[DEC 16 2024]** bump project to Python 3.13 :fast_forward:
208216
- **[JAN 28 2025]** add SMTP setup :email:
217+
- **[MAR 8 2025]** switch from poetry to uv :fast_forward:
209218

210219
<p align="right">(<a href="#readme-top">back to top</a>)</p>
211220

@@ -225,19 +234,19 @@ I've included a few of my favorites to kick things off!
225234
[linkedin-shield]: https://img.shields.io/badge/-LinkedIn-black.svg?style=for-the-badge&logo=linkedin&colorB=555
226235
[linkedin-url]: https://www.linkedin.com/in/python-has-powers/
227236

228-
[fastapi.tiangolo.com]: https://img.shields.io/badge/FastAPI-0.115.6-009485?style=for-the-badge&logo=fastapi&logoColor=white
237+
[fastapi.tiangolo.com]: https://img.shields.io/badge/FastAPI-0.115.11-009485?style=for-the-badge&logo=fastapi&logoColor=white
229238
[fastapi-url]: https://fastapi.tiangolo.com/
230-
[pydantic.com]: https://img.shields.io/badge/Pydantic-2.10.3-e92063?style=for-the-badge&logo=pydantic&logoColor=white
239+
[pydantic.com]: https://img.shields.io/badge/Pydantic-2.10.6-e92063?style=for-the-badge&logo=pydantic&logoColor=white
231240
[pydantic-url]: https://docs.pydantic.dev/latest/
232-
[sqlalchemy.org]: https://img.shields.io/badge/SQLAlchemy-2.0.36-bb0000?color=bb0000&style=for-the-badge
241+
[sqlalchemy.org]: https://img.shields.io/badge/SQLAlchemy-2.0.38-bb0000?color=bb0000&style=for-the-badge
233242
[sqlalchemy-url]: https://docs.sqlalchemy.org/en/20/
234243
[uvicorn.org]: https://img.shields.io/badge/Uvicorn-0.34.0-2094f3?style=for-the-badge&logo=uvicorn&logoColor=white
235244
[uvicorn-url]: https://www.uvicorn.org/
236245
[asyncpg.github.io]: https://img.shields.io/badge/asyncpg-0.30.0-2e6fce?style=for-the-badge&logo=postgresql&logoColor=white
237246
[asyncpg-url]: https://magicstack.github.io/asyncpg/current/
238-
[pytest.org]: https://img.shields.io/badge/pytest-8.3.4-fff?style=for-the-badge&logo=pytest&logoColor=white
247+
[pytest.org]: https://img.shields.io/badge/pytest-8.3.5-fff?style=for-the-badge&logo=pytest&logoColor=white
239248
[pytest-url]: https://docs.pytest.org/en/6.2.x/
240-
[alembic.sqlalchemy.org]: https://img.shields.io/badge/alembic-1.14.0-6BA81E?style=for-the-badge&logo=alembic&logoColor=white
249+
[alembic.sqlalchemy.org]: https://img.shields.io/badge/alembic-1.15.1-6BA81E?style=for-the-badge&logo=alembic&logoColor=white
241250
[alembic-url]: https://alembic.sqlalchemy.org/en/latest/
242251
[rich.readthedocs.io]: https://img.shields.io/badge/rich-13.9.4-009485?style=for-the-badge&logo=rich&logoColor=white
243252
[rich-url]: https://rich.readthedocs.io/en/latest/

0 commit comments

Comments
 (0)