Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

HTML

Branko Zivanovic
Branko Zivanovic
2,684 Points

HTML preprocessors and partials

Hey everone! At the moment, I'm working at my very first BIG project.Lately all I've been doing, were simple static web pages, but these days I'm looking for environment that is going to give me easy time when maintaining stuff.I'm using SASS with SMACSS and my CSS is organized, but my HTML is literally huge.Is there any way to break that document in smaller partials, like I would do with SASS partials? Thanks

2 Answers

Roy Penrod
Roy Penrod
19,809 Points

Good list, Dustin. Thanks for putting it together.

Roy Penrod
Roy Penrod
19,809 Points

On the modern web, you usually do that within a framework that uses the Model-View-Controller (MVC) design pattern.

Basically, you use a template language to create "views" consisting of partial HTML files and then inject data into them.

If you know PHP, check out the Building Websites With PHP course. It shows a simple project using the Slim framework with the Twig template language.

Branko Zivanovic
Branko Zivanovic
2,684 Points

Okay, sounds like I'm going to dive into the PHP. Thank you

Roy Penrod
Roy Penrod
19,809 Points

You don't necessarily have to do it with PHP. You could use any back-end programming language, including JavaScript.

You need to do it on the server because the browser needs the document to render it.