FARM Stack Course - FastAPI, React, MongoDB

  Рет қаралды 146,948

freeCodeCamp.org

freeCodeCamp.org

Күн бұрын

The FARM stack is FastAPI, React, and MongoDB. It is a simpler form of the MERN stack that can make developing apps even faster. In this course, you will learn how to create a basic CRUD application using the FARM stack.
✏️ Bek Brace developed this course. Check out his channel: / @bekbrace
💻 Code: github.com/BekBrace/FARM-Stac...
⭐️ Course Contents ⭐️
⌨️ (00:00) FARM STACK Explained (Theory)
⌨️ (11:20) Backend build (FastAPI)
⌨️ (39:39) MongoDB Queries
⌨️ (42:15) Frontend Design
⌨️ (58:03) App Testing
--
🎉 Thanks to our Champion and Sponsor supporters:
👾 Wong Voon jinq
👾 hexploitation
👾 Katia Moran
👾 BlckPhantom
👾 Nick Raker
👾 Otis Morgan
👾 DeezMaster
👾 Treehouse
--
Learn to code for free and get a developer job: www.freecodecamp.org
Read hundreds of articles on programming: freecodecamp.org/news

Пікірлер: 175
@haaris4693
@haaris4693 3 жыл бұрын
This channel should be awarded with honour for what they have been doing for the society ❤️
@Josh-qb4em
@Josh-qb4em Жыл бұрын
I have this issue when watching tutorial videos like this where if the instructor makes a typo or something, I'll be hyper-fixated on it until it gets acknowledged. Anything said/taught between the time of the typo and the time of acknowledgment goes in one ear and out the other. So the fact that you did those little popups immediately acknowledging it was wonderful.
@mayankrai165
@mayankrai165 3 жыл бұрын
Love the channel ❤️ such great content
@kabylekabyle9250
@kabylekabyle9250 3 жыл бұрын
Hello! thanks you sir carnes FCC, thanks all of you guys to help us.
@Miho_13
@Miho_13 3 ай бұрын
Very good introduction , thank you !
@naveens9575
@naveens9575 6 ай бұрын
That was an awesome short tutorial on farm stack✌
@nyashachiroro2531
@nyashachiroro2531 3 жыл бұрын
I love this stack
@laracombina
@laracombina 2 ай бұрын
this was really helpful, thank you!!
@surayuthpintawong8332
@surayuthpintawong8332 2 жыл бұрын
Thanks, I can finally see the big picture how each component (FastAPI, React, MongoDB) connects togther!
@marcscherzer
@marcscherzer 3 жыл бұрын
Didn't know FARM stack existed ...
@BRISKLYHIDDEN
@BRISKLYHIDDEN 2 жыл бұрын
GREAT JOB! Thank You, Bek !
@BekBrace
@BekBrace 2 жыл бұрын
Thank you, Kratos :)
@jeanleloup2205
@jeanleloup2205 3 жыл бұрын
MongoDB not graphql - Thank you for this refreshing turtorial
@martynbirdem189
@martynbirdem189 3 жыл бұрын
kzbin.info/www/bejne/iWapq42Gpdahmrs Javascript tutorial easy example kzbin.info/www/bejne/rZK7n513eap4d8k
@narutokun5093
@narutokun5093 3 жыл бұрын
Thank you for such great videos , great work
@mauricefakhry8039
@mauricefakhry8039 3 жыл бұрын
Great tutorial !!
@martynbirdem189
@martynbirdem189 3 жыл бұрын
kzbin.info/www/bejne/iWapq42Gpdahmrs Javascript tutorial easy example kzbin.info/www/bejne/rZK7n513eap4d8k
@shahriar.shourov
@shahriar.shourov 3 жыл бұрын
Thanks!
@project-pcs
@project-pcs 3 жыл бұрын
First, and also fast api is really good!
@123arskas
@123arskas Жыл бұрын
Thank you so much for this. Now I can dive deeply into the FARM stack
@horizons4225
@horizons4225 3 жыл бұрын
thank you
@mahendranath2504
@mahendranath2504 5 ай бұрын
Wow, thank you so much for sharing the knowledge 🫡🙏👍😊
@BayarUdval
@BayarUdval 2 жыл бұрын
Nicely done, :)
@nikolaikletnoi9346
@nikolaikletnoi9346 2 жыл бұрын
This is a great guide!! Everything works really well and relative to other frameworks it is super-easy to learn and use; i was wondering if you could please show how to connect to mongodb proper ( in the cloud); i have tried a few things but somehow, something was off; it would be nice to connect to cloud, not just on-prem; thanks so much!!
@b20lopez
@b20lopez Жыл бұрын
use Pymongo
@frosty7674
@frosty7674 3 жыл бұрын
First, Edit: tomorrow's my exam and these pple posting one after other videos, cool videos
@BekBrace
@BekBrace 3 жыл бұрын
Thank you 🙏
@sachinsudaraka6397
@sachinsudaraka6397 3 жыл бұрын
Thanks
@cybr774
@cybr774 3 жыл бұрын
I'm somehow not able to delete the todos. Every time I press the button that removes the todo, in the console I get the following error: "Failed to load resource: the server responded with a status of 404 (Not Found)". The thing is that the uri is correct, but it somehow gives me that error. From the swagger UI it works fine, but it doesn't from the frontend. Any tips on what can be done to resole this issue? I'd appreciate it! Edit: I actually found the problem! If anyone is encountering the same problem, it's that in the file Todo.js, in the deleteTodoHandler, the uri is wrong (in the frontend , Bek Brace used this uri "localhost:8000/api/todo/${title}", while the API responds to "localhost:8000/api/todo${title}" and the difference is the / that shouldn't be there to match the uri to the API).
@erickheredia8910
@erickheredia8910 3 жыл бұрын
Next Stack: NUTS (Nuxtjs, TailwindCSS, Supabase). Mark my words!
@martynbirdem189
@martynbirdem189 3 жыл бұрын
kzbin.info/www/bejne/iWapq42Gpdahmrs Javascript tutorial easy example kzbin.info/www/bejne/rZK7n513eap4d8k
@frackinfamous6126
@frackinfamous6126 11 ай бұрын
Don’t you mean get on your NUTS? 😂
@rangabharath4253
@rangabharath4253 3 жыл бұрын
Awesome 👍😎
@mareboinaravi5272
@mareboinaravi5272 3 жыл бұрын
❤️❤️MERN is love❤️❤️
@sathyapriya3999
@sathyapriya3999 3 жыл бұрын
Hi sir I just joined this channel .very usefull to my software study
@BekBrace
@BekBrace 3 жыл бұрын
Great
@satyasridevi851
@satyasridevi851 3 жыл бұрын
I just saw this stack in mongodb channel live
@satyasridevi851
@satyasridevi851 3 жыл бұрын
@c_a yes kzbin.info
@peterkulik5943
@peterkulik5943 3 жыл бұрын
0:02 "The FARM stack is FastAPI, React and GraphQL." I went through this video, but I didn't find any other reference to GraphQL
@martynbirdem189
@martynbirdem189 3 жыл бұрын
kzbin.info/www/bejne/iWapq42Gpdahmrs Javascript tutorial easy example kzbin.info/www/bejne/rZK7n513eap4d8k
@aureli4nus
@aureli4nus 2 жыл бұрын
probably just a miss on their side, it shouldbe MongoDB not GraphQL
@robertmazurowski5974
@robertmazurowski5974 Жыл бұрын
These 3 letter acronyms don't make sense anymore, and most of them wont sound good, or be memorable.
@astronemir
@astronemir 2 жыл бұрын
Can’t believe this is free. People charge hundreds for such lessons split into a bunch of short form videos.
@MehulBhuradia
@MehulBhuradia Жыл бұрын
How do we dockerize this stack?
@tranquillityEnthusiast
@tranquillityEnthusiast 3 жыл бұрын
Need a mean stack full course..
@Shou06
@Shou06 3 жыл бұрын
It would be great if there will be a course on deployment an web app
@michaeljayarizala9305
@michaeljayarizala9305 2 жыл бұрын
Great tutorial very easy to follow along! Do you have any suggestion for an ideal approach to adding user authentication in FastAPI i.e. recommended authentication library we can use that allows pbkdf2 or ssha encryption as well as generating session tokens?
@BekBrace
@BekBrace 2 жыл бұрын
Thank you, Michael - glad to hear :) I have a tutorial for user authentication with FastAPI and JSON Web Tokens - maybe this can help you : kzbin.info/www/bejne/ZpDWloF8eNmaos0
@dajlefromcb
@dajlefromcb Жыл бұрын
If you are using Python 3.11, you have to use motor == 3.1.1 dependency.
@luisdato1712
@luisdato1712 Жыл бұрын
26:12 Why do you use await? I tried to run program without await but it also runs nomarlly.
@coleblender1998
@coleblender1998 2 жыл бұрын
Where is the video to set up the paths?
@Faybmi
@Faybmi 24 күн бұрын
40:12 if you don't have todo in mongo, try post method in docs
@mrrishiraj88
@mrrishiraj88 3 жыл бұрын
👍
@mdabirkhan1103
@mdabirkhan1103 3 жыл бұрын
Woow🥰🥰🥰
@piyushmahapatra6405
@piyushmahapatra6405 3 жыл бұрын
Waiting for some database to start with T to make it " FART Stack " Sorry for that joke :( Appreciate the Content
@sircosm
@sircosm 3 жыл бұрын
There's Teradata and Tibero for farts ;)
@allthecommonsense
@allthecommonsense 3 жыл бұрын
lol
@EveRestUpsb
@EveRestUpsb 2 жыл бұрын
FastAPI, React and Typescript!
@raphael6441
@raphael6441 2 жыл бұрын
Thank you so much for this tutorial. I'm just wondering how and how often the data are refreshed ? The backend seem to have a lot of requests in my implementation.
@rice5817
@rice5817 2 жыл бұрын
Does the official docs not mention anything about that?
@himanshchauhan4287
@himanshchauhan4287 6 ай бұрын
@@rice5817 yes i was facing the same problem because there is no dependency on which the state should change that is why we get that endless api calls in terminal. Solution-> create a new usestate key with initial value set to 0.Then in useeffect just add 1 in old key const [refreshKey, setRefreshKey] = useState(0); useEffect(() => { axios.get('localhost:5007/fetch_all_todo') .then(res => { setTodoList(res.data) }) }, [refreshKey]); const addTodoHandler = (id,title,desc) => { axios.post('localhost:5007/create_todo', { 'id': id, 'title': title, 'description': desc }) .then(res => setRefreshKey(oldKey => oldKey +1))
@webcodingoprogrammingtips2090
@webcodingoprogrammingtips2090 3 жыл бұрын
LAMP, MEAN, MERN, FARM - what is the next stack? :)
@Filiq.
@Filiq. 3 жыл бұрын
MEVN, PERN, WISA xD
@satyasridevi851
@satyasridevi851 3 жыл бұрын
You missed MEVN
@ac130kz
@ac130kz 3 жыл бұрын
RUSP - Rust Svelte Postgres
@rustamshrestha4
@rustamshrestha4 3 жыл бұрын
JAM stack JS, Api & -MongoDB- * Markup * 😂
@danielibanez1855
@danielibanez1855 3 жыл бұрын
How about FAVM?
@tyronefrielinghaus3467
@tyronefrielinghaus3467 10 ай бұрын
great : and you have a good , easy to follow voice. Some FCC courses have AWFUL voices , super hard to listen to for long....high extrinsic cognitive load imposed!
@michaelshort2388
@michaelshort2388 Жыл бұрын
when creating a post I get the error "object has no attribute 'dict'
@himanshchauhan4287
@himanshchauhan4287 7 ай бұрын
Hi im having trouble. axios keeps calling backend api when fetching all todos in useeffect part. Is this expected?
@ketchupparty9997
@ketchupparty9997 3 жыл бұрын
A course on Three.js please
@martynbirdem189
@martynbirdem189 3 жыл бұрын
kzbin.info/www/bejne/iWapq42Gpdahmrs Javascript tutorial easy example kzbin.info/www/bejne/rZK7n513eap4d8k
@kyleshrader9053
@kyleshrader9053 2 жыл бұрын
Why do you prefer NPM over YARN?
@leepham7782
@leepham7782 Жыл бұрын
So I'm trying to follow along with this tutorial, but when I run both front and backend, once my react page loads, it continuously makes calls and doesnt stop. I also am unable to delete or create tasks. Does someone have a repo of this project I can check out?
@samalexkoshy2877
@samalexkoshy2877 Жыл бұрын
It's the onChange that makes the call continuously for me. As for the deletion and creation of tasks, even I'm facing the same issue. An empty task is being displayed for me
@alpha3twin
@alpha3twin Жыл бұрын
Why start with todo ids when defining routes and then switch to using titles as identifiers?
@munchabel
@munchabel Жыл бұрын
That's a great point. Using title as an identifier is bad practice. What if you have duplicate titles, for example? Stick to the todo id, which is always unique!
@tr.j4079
@tr.j4079 2 жыл бұрын
Can we have a FARM with Fastify?
@moazim1993
@moazim1993 2 жыл бұрын
what's he using to run Linux terminal on windows?
@TheHummChannel
@TheHummChannel 3 жыл бұрын
Why did not you use Moralis Serverless?
@kenfeier5542
@kenfeier5542 3 жыл бұрын
For those that don't know Python, this can also be done using NodeJS, Express, and Mongoose. You can create a schema and set routers that can generate simple CRUD API calls in a very similar way as the FastAPI.
@revernd2491
@revernd2491 6 ай бұрын
ofc, but that defeats the very purpose of this course
@yashvarshney6761
@yashvarshney6761 2 жыл бұрын
How to deploy this?
@timbrap4693
@timbrap4693 Жыл бұрын
Is this serverside rendering or clientside rendering?
@athulkrishnadiyil1735
@athulkrishnadiyil1735 2 жыл бұрын
how to use gridfs/imageupload with fastapi motor
@atomicbreath4360
@atomicbreath4360 2 жыл бұрын
Can anyone help me how to upload file in FARM stack
@BlakeTedKord
@BlakeTedKord 3 жыл бұрын
FCC Team - Will there be a complete class with more courses in a playlist on the topics of computer vision/Neural network and CISSP and SEC+? I’m sure a lot of people here would look forward to that.
@martynbirdem189
@martynbirdem189 3 жыл бұрын
kzbin.info/www/bejne/iWapq42Gpdahmrs Javascript tutorial easy example kzbin.info/www/bejne/rZK7n513eap4d8k
@himanshusharma-ve7uj
@himanshusharma-ve7uj 2 жыл бұрын
I am facing pydantic.error_wrappers.ValidationError: 1 validation error for Todo response value is not a valid dict (type=type_error.dict) , While calling post method response = await create_todo(todo.dict()) . Please can you help in this.
@bohdan134
@bohdan134 2 жыл бұрын
At database.py you need to change return of create_todo function to "document", not "result" value.
@robertmazurowski5974
@robertmazurowski5974 Жыл бұрын
@@bohdan134 In the video he said that was a mistake. He should correct somewhere or do an annotation.
@robertmazurowski5974
@robertmazurowski5974 Жыл бұрын
@@bohdan134 And because of that error I discovered I can put multiple Duplicate titles. is there a primary key in Mongo DB
@user-rk3jg1bk5f
@user-rk3jg1bk5f 3 жыл бұрын
when will be java backend tutorial?
@user-rk3jg1bk5f
@user-rk3jg1bk5f 3 жыл бұрын
Please
@komandan6868
@komandan6868 3 жыл бұрын
Bro tutoriall full video python androidhelper... Plsee bro🙏🙏
@robertmazurowski5974
@robertmazurowski5974 Жыл бұрын
In Poland it is AŻUR not aizure
@astronemir
@astronemir 2 жыл бұрын
I could feel the lag after 45:00 in real life
@slothpete7773issleeping
@slothpete7773issleeping 2 жыл бұрын
I clicked on this video because the stack name sounds interesting.
@utkarshbansal2758
@utkarshbansal2758 3 жыл бұрын
pls make a course on ios development using swiftui
@martynbirdem189
@martynbirdem189 3 жыл бұрын
kzbin.info/www/bejne/iWapq42Gpdahmrs Javascript tutorial easy example kzbin.info/www/bejne/rZK7n513eap4d8k
@sukantagarwal6824
@sukantagarwal6824 3 жыл бұрын
Hi, can you provide the link for fast api course in comments?
@TR1ckY_TV
@TR1ckY_TV 3 жыл бұрын
there you go Bro kzbin.info/www/bejne/bGPTgWymm9-BiNU
@sukantagarwal6824
@sukantagarwal6824 3 жыл бұрын
@@TR1ckY_TV thanks bro!
@coleblender1998
@coleblender1998 2 жыл бұрын
At 40:17 my database did not connect to the compass. I even replaced all of my code with the one in the repo and it still didn't work. Does anyone know what the problem could be?
@dwein008
@dwein008 2 жыл бұрын
I think, i have the same problem, for me it works when i do close vs code and open again and do the post method.
@XShollaj
@XShollaj 2 жыл бұрын
Execute the post method after the connection- that triggers the automatic creation of the TodoList database (since we already have established the connection)
@rohitkumarb.r3865
@rohitkumarb.r3865 3 ай бұрын
What about update?
@kz_cbble9670
@kz_cbble9670 4 ай бұрын
24:00 33:00
@fumano2679
@fumano2679 Жыл бұрын
Im using angular as frontend but i really liked the backend part
@amirbraham6507
@amirbraham6507 2 жыл бұрын
How would you go about deploying it on heroku for example ? Do you host two separate apps and hard code your backend url instead of localhost:3000 ? Thanks in advance
@kartyk7415
@kartyk7415 Жыл бұрын
Superb tutorial I also had the same problem in VS code so i used PyCharm😁😁😁😁
@City__Walker
@City__Walker Жыл бұрын
Ehh enterprise not use mongo :( I need FARP Postrges variant
@ananthvankipuram4012
@ananthvankipuram4012 2 жыл бұрын
FARM stack is proudly sponsored by the exceptional Farmers over at Ligue1! Jokes apart, at this rate we have MERN, PERN, NERN(Next) and we will have JS Fatigue all over again. LOL
@sarthakgautam8035
@sarthakgautam8035 4 ай бұрын
I am not able to import motor package .... tried upgrading all packages also still the same problem is there
@esmailalmoshki3506
@esmailalmoshki3506 3 ай бұрын
most likely it is a python-version-related problem
@martinmiz
@martinmiz 2 ай бұрын
It's probably an issue with how you setup your virtual environment and if you are using VS Code, you need to check and see that you're using the correct interpreter that matches with your current venv file. You can press Ctrl+Shift+P and select "Python: Select Interpreter". Choose the one with (venv) or having "Recommended". You may need to restart your VSCode window sometimes.
@nonameiskickass1319
@nonameiskickass1319 3 жыл бұрын
Who wants LAME stack next ?
@rustamshrestha4
@rustamshrestha4 3 жыл бұрын
Linux Apache MongoDB Elixir 😂
@atefe3919
@atefe3919 2 жыл бұрын
Hi thank you for an amazing tutorial. I can not find the FastApi course, would you share the link?
@liriani
@liriani 2 жыл бұрын
32:45
@leewseea
@leewseea 3 жыл бұрын
I thought u have some really cool mouse pointer afterimage effects, but it was just the video lagging XD
@BekBrace
@BekBrace 3 жыл бұрын
Yes, I apologize for that, it also bothered me when I was done recording
@danielibanez1855
@danielibanez1855 3 жыл бұрын
How common would a FAVM stack be? 🤔
@BekBrace
@BekBrace 3 жыл бұрын
I'd love to recreate this with Vue.js someday
@manliomarchica4911
@manliomarchica4911 2 жыл бұрын
I see in the console of the browser that // Read all todos useEffect(() => { axios.get('localhost:8000/api/todo') .then(res => { setTodoList(res.data) }) }); generate and infinite call to get todos as the component App was continuosly rendered. I add [] as second parameter of useEffect to call it once and change the add handler to update the state, further I move the delete hanlder in the App.js and pass the reference deep in the child component, also in the delete handler I have to update the state // Post a todo const addTodoHandler = () => { axios.post('localhost:8000/api/todo/', { 'title': title, 'description': desc }) .then(res => { console.log(res); const newTodoList = [...todoList]; newTodoList.push(res.data); setTodoList(newTodoList); }); } const deleteTodoHandler = (title) => { const encoded = encodeURI(`localhost:8000/api/todo/${title}`); axios.delete(encoded) .then(res => { console.log(res.data) const newTodoList = todoList.filter(item => item.title !== title); setTodoList(newTodoList); }); };
@isaacafara5811
@isaacafara5811 2 жыл бұрын
Thanks Manlio, nice update to this great video. Quick question: how did you pass the reference after moving "deleteTodoHandler" tp App.js? Can you please show example?
@danielleivy8180
@danielleivy8180 7 ай бұрын
@@isaacafara5811 useEffect(() => { readTodosHandler() }, [todoList]) This will watch when todoList changes (I didn't have to move the delete function). Also it's a good idea to extract the useEffect axios call into it's own function.
@jon7035
@jon7035 9 ай бұрын
Now we need something a T so we can have a FART Stack
@jon7035
@jon7035 9 ай бұрын
FastAPI React TErraform DynamoDB - FARTED
@thesameerjoshi
@thesameerjoshi 3 жыл бұрын
Thats a lot of stack rhyme
@satyasridevi851
@satyasridevi851 3 жыл бұрын
Is FastAPI python framework?
@dragonarch0
@dragonarch0 3 жыл бұрын
Yup
@Deiwulf
@Deiwulf 3 жыл бұрын
666.. that's bound to be some sort of a sign
@oussamanidhalbelhadjhammou643
@oussamanidhalbelhadjhammou643 3 жыл бұрын
kzbin.info/www/bejne/nnOYfnqLpc-fn5Y
@raminatox
@raminatox Жыл бұрын
The web dev had a FARM, E-I-E-I-O...
@florijnterstal6590
@florijnterstal6590 3 жыл бұрын
Nice.. now make the right tutorial... FastApi, Vuejs and PostgreSQL
@Abdiwazic
@Abdiwazic 3 жыл бұрын
First♥️
@b20lopez
@b20lopez Жыл бұрын
Could you please do a video on how to deploy this to Google cloud? or firebase? or any hosting?
@yinghouwang
@yinghouwang 2 ай бұрын
Save my life!!!!
@Ken-S
@Ken-S 3 жыл бұрын
LMAO - Linux, Mongo, Angular, OpenAPI
@sardor1391
@sardor1391 3 жыл бұрын
Make channel like that on Russian
@neotiwari3772
@neotiwari3772 3 жыл бұрын
Fourth
@credoboyofficial
@credoboyofficial 3 жыл бұрын
Wooo 7 comment 😂
@shahriar.shourov
@shahriar.shourov 3 жыл бұрын
First
@yinghouwang
@yinghouwang 2 ай бұрын
Thanks!
Why You NEED To Learn FastAPI | Hands On Project
21:15
Travis Media
Рет қаралды 150 М.
Must-have gadget for every toilet! 🤩 #gadget
00:27
GiGaZoom
Рет қаралды 12 МЛН
The child was abused by the clown#Short #Officer Rabbit #angel
00:55
兔子警官
Рет қаралды 21 МЛН
Alat Seru Penolong untuk Mimpi Indah Bayi!
00:31
Let's GLOW! Indonesian
Рет қаралды 13 МЛН
1❤️
00:17
Nonomen ノノメン
Рет қаралды 8 МЛН
How to build a React + FastAPI application (Full Stack Guide)
51:07
Linux on Windows......Windows on Linux
23:54
NetworkChuck
Рет қаралды 83 М.
You don't need a frontend framework
15:45
Andrew Schmelyun
Рет қаралды 108 М.
4 Tips for Building a Production-Ready FastAPI Backend
27:02
ArjanCodes
Рет қаралды 52 М.
APIs for Beginners - How to use an API (Full Course / Tutorial)
2:19:33
freeCodeCamp.org
Рет қаралды 4,3 МЛН
Python FastAPI Tutorial: Build a REST API in 15 Minutes
15:16
How to Use FastAPI: A Detailed Python Tutorial
20:38
ArjanCodes
Рет қаралды 216 М.
Must-have gadget for every toilet! 🤩 #gadget
00:27
GiGaZoom
Рет қаралды 12 МЛН