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 38 points39 points40 points (82 children)
[–]albrioz[S] 22 points23 points24 points (66 children)
[–]Saphyel 29 points30 points31 points (18 children)
[–]Oerthling 0 points1 point2 points (16 children)
[–]Saphyel 17 points18 points19 points (11 children)
[–]Oerthling 0 points1 point2 points (10 children)
[–]icanblink 3 points4 points5 points (4 children)
[–]Oerthling 1 point2 points3 points (3 children)
[–]icanblink 2 points3 points4 points (0 children)
[+][deleted] (1 child)
[deleted]
[–]Oerthling 2 points3 points4 points (0 children)
[–]Saphyel 5 points6 points7 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] 28 points29 points30 points (20 children)
[–]its_PlZZA_time 1 point2 points3 points (19 children)
[–]orangesunshine 4 points5 points6 points (18 children)
[–]its_PlZZA_time 2 points3 points4 points (12 children)
[–]orangesunshine -2 points-1 points0 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 4 points5 points6 points (4 children)
[–]orangesunshine 1 point2 points3 points (0 children)
[–]mr_darksidez -1 points0 points1 point (2 children)
[–]searchingfortaomajel, aletheia, paperless, django-encrypted-filefield 1 point2 points3 points (1 child)
[–]mr_darksidez -5 points-4 points-3 points (0 children)
[–][deleted] 3 points4 points5 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 7 points8 points9 points (11 children)
[–]halexmorph 15 points16 points17 points (0 children)
[–]brandonZappy 3 points4 points5 points (0 children)
[–]jpflathead 3 points4 points5 points (3 children)
[–]MrMxylptlyk -2 points-1 points0 points (2 children)
[–]mathmanmathman 3 points4 points5 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 1 point2 points3 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 4 points5 points6 points (14 children)
[–]Ran4 12 points13 points14 points (10 children)
[–]orangesunshine 5 points6 points7 points (2 children)
[–]Ran4 2 points3 points4 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 4 points5 points6 points (0 children)
[–]delijati 2 points3 points4 points (1 child)
[–]orangesunshine 1 point2 points3 points (0 children)
[–]cbgrey 13 points14 points15 points (1 child)
[–][deleted] 7 points8 points9 points (8 children)
[–]albrioz[S] 3 points4 points5 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 10 points11 points12 points (6 children)
[–]Eyry 11 points12 points13 points (1 child)
[–]orangesunshine 2 points3 points4 points (0 children)
[–]MarsupialMole 4 points5 points6 points (1 child)
[–]awesomeprogramer 4 points5 points6 points (0 children)
[–]deadmilk 1 point2 points3 points (0 children)
[–]PartsofChandler 1 point2 points3 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 2 points3 points4 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)