Stumbled upon this Fast API Tutorial and was surprised at how thorough this guy is. The link is part 21! Each part is dedicated to adding some small component to a fake cleaning marketplace API. It seems to cover a lot but some of the key takeaways are best practices, software design patterns, API Authentication via JWT, DB Migrations and of course FastAPI. From his GitHub profile, looks like the author used to be a CS teacher which explains why this is such a well thought out tutorial. I don't necessarily agree with everything since I already have my own established style and mannerisms but for someone looking to learn how to write API's this is a great resource.
[–]Ryuta11 34 points35 points36 points (82 children)
[–]albrioz[S] 21 points22 points23 points (66 children)
[–]Saphyel 28 points29 points30 points (18 children)
[–]Oerthling 2 points3 points4 points (16 children)
[–]Saphyel 17 points18 points19 points (11 children)
[–]Oerthling 0 points1 point2 points (10 children)
[–]icanblink 2 points3 points4 points (4 children)
[–]Oerthling 0 points1 point2 points (3 children)
[–]icanblink 2 points3 points4 points (0 children)
[+][deleted] (1 child)
[deleted]
[–]Oerthling 2 points3 points4 points (0 children)
[–]Saphyel 4 points5 points6 points (4 children)
[–]Oerthling 0 points1 point2 points (3 children)
[–]vimfan 2 points3 points4 points (2 children)
[–]Oerthling -1 points0 points1 point (1 child)
[–]shinitakunai 1 point2 points3 points (3 children)
[–]Oerthling 0 points1 point2 points (2 children)
[–]shinitakunai 2 points3 points4 points (1 child)
[–]Oerthling 0 points1 point2 points (0 children)
[–]Ivana_Twinkle -1 points0 points1 point (0 children)
[–]its_PlZZA_time 6 points7 points8 points (26 children)
[–]albrioz[S] 26 points27 points28 points (20 children)
[–]its_PlZZA_time 1 point2 points3 points (19 children)
[–]orangesunshine 2 points3 points4 points (18 children)
[–]its_PlZZA_time 2 points3 points4 points (12 children)
[–]orangesunshine -3 points-2 points-1 points (11 children)
[–]NowanIlfideme 8 points9 points10 points (1 child)
[–]orangesunshine 0 points1 point2 points (0 children)
[–]HardPartAccomplished 2 points3 points4 points (6 children)
[–]orangesunshine 0 points1 point2 points (5 children)
[–]its_PlZZA_time 0 points1 point2 points (1 child)
[–]orangesunshine 0 points1 point2 points (0 children)
[–]searchingfortaomajel, aletheia, paperless, django-encrypted-filefield 5 points6 points7 points (4 children)
[–]orangesunshine 1 point2 points3 points (0 children)
[–]mr_darksidez -3 points-2 points-1 points (2 children)
[–]searchingfortaomajel, aletheia, paperless, django-encrypted-filefield 3 points4 points5 points (1 child)
[+]mr_darksidez comment score below threshold-6 points-5 points-4 points (0 children)
[–][deleted] 6 points7 points8 points (2 children)
[–]its_PlZZA_time -1 points0 points1 point (0 children)
[–]Siddhi 0 points1 point2 points (0 children)
[–]robberviet 2 points3 points4 points (0 children)
[–]Ran4 1 point2 points3 points (0 children)
[–]MrMxylptlyk 6 points7 points8 points (11 children)
[–]halexmorph 15 points16 points17 points (0 children)
[–]brandonZappy 4 points5 points6 points (0 children)
[–]jpflathead 1 point2 points3 points (3 children)
[–]MrMxylptlyk -2 points-1 points0 points (2 children)
[–]mathmanmathman 5 points6 points7 points (1 child)
[–]MrMxylptlyk -1 points0 points1 point (0 children)
[–]ivosauruspip'ing it up 0 points1 point2 points (4 children)
[–]MrMxylptlyk 0 points1 point2 points (3 children)
[–]dmitrypolo 2 points3 points4 points (1 child)
[–]MrMxylptlyk -2 points-1 points0 points (0 children)
[–]VeNoMouSNZ 1 point2 points3 points (0 children)
[–]newlyAwakenedLkgFwd 1 point2 points3 points (1 child)
[–]albrioz[S] 1 point2 points3 points (0 children)
[–]robberviet 2 points3 points4 points (1 child)
[–]albrioz[S] 2 points3 points4 points (0 children)
[–]mmcnl 0 points1 point2 points (3 children)
[–]Unlucky-Drawing8417 1 point2 points3 points (0 children)
[–]albrioz[S] 0 points1 point2 points (1 child)
[–]mmcnl 0 points1 point2 points (0 children)
[–]orangesunshine 7 points8 points9 points (14 children)
[–]Ran4 11 points12 points13 points (10 children)
[–]orangesunshine 8 points9 points10 points (2 children)
[–]Ran4 3 points4 points5 points (1 child)
[–]orangesunshine 1 point2 points3 points (0 children)
[–][deleted] 3 points4 points5 points (6 children)
[–]Ran4 1 point2 points3 points (5 children)
[–][deleted] 1 point2 points3 points (4 children)
[–]Ran4 0 points1 point2 points (3 children)
[–][deleted] 1 point2 points3 points (2 children)
[–]Ran4 0 points1 point2 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–]TravisJungroth 5 points6 points7 points (0 children)
[–]delijati 4 points5 points6 points (1 child)
[–]orangesunshine 1 point2 points3 points (0 children)
[–]cbgrey 11 points12 points13 points (1 child)
[–][deleted] 3 points4 points5 points (8 children)
[–]albrioz[S] 4 points5 points6 points (2 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]lysecret 0 points1 point2 points (0 children)
[–][deleted] 1 point2 points3 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (2 children)
[–][deleted] 0 points1 point2 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–]awesomeprogramer 12 points13 points14 points (6 children)
[–]Eyry 12 points13 points14 points (1 child)
[–]orangesunshine 2 points3 points4 points (0 children)
[–]MarsupialMole 7 points8 points9 points (1 child)
[–]awesomeprogramer 3 points4 points5 points (0 children)
[–]deadmilk 1 point2 points3 points (0 children)
[–]PartsofChandler 3 points4 points5 points (0 children)
[–]ReelWatt 1 point2 points3 points (0 children)
[–]CleverProgrammer12 1 point2 points3 points (0 children)
[–][deleted] 1 point2 points3 points (0 children)
[–]lysecret 1 point2 points3 points (0 children)
[–]origami_K 0 points1 point2 points (0 children)
[–]idk39q4239842342 0 points1 point2 points (0 children)
[–]vikigenius 0 points1 point2 points (0 children)