There exist countless metaphors to describe the differences between the front-end and back-end development when building websites. But, a single sentence can sum up the differences nicely: Front-end development is what you see and back-end development is what you don't.
What is Front-end?
What is Back-End?
The back-end of a website powers a lot of what you see on the front-end. Two parts make up the back-end of a website: the database and the application.
The database stores all sorts of information for the website, like a giant spreadsheet. Page content, form fills, user login information, and tons more gets stored in the database. The application works as the middle-man between the database and the front-end.
The application is going to be what takes items, such as form fills, and stores it in the database. Or, it takes content from the database and makes it easier to use by the front-end. For example, the database could hold records of every product available for sale. Then, it's up to the application to get the relevant products to display in a search query a user is performing.
Sometimes the lines blur between front-end and back-end and can be more complicated. The important thing to note is that while they are different and distinct, both are necessary to make a website accessible, user-friendly and engaging.