Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialchris campbell
670 Pointshow do I create a video sharing site?
I'm interested in creating video sharing site like youtube and vimeo
1 Answer
Maximillian Fox
Courses Plus Student 9,236 PointsCreating a video sharing site would be a great project, and a good way to learn lots of different web languages too. Take things one step at a time, and as you learn more languages you will understand how you can interact them all together.
Now I can't tell you how one is built because there are probably many different ways to go about doing it. But there are a common set of web technologies and skills that you will need to learn in order to do this well.
You will need to know quite a few web programming languages, including HTML, CSS, and Javascript for your front-end content and for the overall look and feel of the page. I recommend learning these first and practice creating some good designs. I think JavaScript will be the most challenging of the courses, but it's very rewarding as you learn a whole lot, and the course on Treehouse is great. There is a track for front-end web development which i think would be perfect if you are not going along this path already. Also, check out wireframing tools, so you can create ideas and designs before you code them. This will save you lots of time.
If this is to be a user generated video site, where any user can create an account and upload their content to your site, you will need to learn a back-end server-side language such as PHP in order to take form submissions and uploads, and create database entries to then be served back to the web browser and allow users to have accounts.
You will also need to learn how to keep your pages secure so that they are less prone to being compromised. Forms are a particularly weak point in your site but the course showing you how to improve an already built website with PHP discusses some of these issues and will walk you through these steps. If you are good with JavaScript and basic programming concepts, you should find PHP much easier to pick up, as many concepts are the same, only with different syntax. Using frameworks such as Twig and Slim will also heavily reduce the code you write, and provide additional security for your site. This is also covered on Treehouse (and something I am currently working on, as well as reviewing JS).
You would then need a database like MySQL to store all your information in for your site, and then to make your pages really dynamic like how YouTube works, you could use AJAX for things like auto-suggests in search, so when you type it gets a list of frequently searched items matching your input from your database on the fly.
Good luck and I hope you have great fun with this project! Keep us updated how it's going, and if you have any questions feel free to post on the forums!
chris campbell
670 Pointschris campbell
670 Pointsthank you