Modern Python Projects Transcripts
Chapter: Cookiecutter templates
0:00 Cookie cutter is one of the best answers to one of those How to build X
0:04 in python questions. You want to build a Django website.
0:08 Great use Cookie cutter Django, Flask or fast API.
0:12 Their templates for those frameworks to, want to publish a package on PyPI.
0:16 But you have never done this,
0:17 so you are not sure how to start.
0:19 Well, there is a cookie cutter -py package that you can use, using Cookie
0:23 cutter can give you a head start when building a new python project.
0:27 Instead of setting up everything by hand,
0:29 you can use one of the existing templates.
0:31 Some of the main benefits of using a cookie cutter are that, it removes a lot
0:36 of boring work that you need to do when you set up the project.
0:39 When you start building a Django website,
0:41 you probably need to add some plugins for authentication,
0:45 maybe install pytest with some plugins.
0:47 Set up continuous integration to make sure that your tests are running automatically on GitHub
0:51 That's all boring work that you have to do for every project,
0:55 and I'm pretty sure just like me,
0:57 you would prefer to actually build that website, instead of dealing with all this stuff,
1:02 especially since it's easy to meet something and then you waste even more time debugging some
1:07 miss configured settings. Cookie cutter deals with this problem for us.
1:12 You answer some questions, and it immediately generates a project with all those things already
1:17 set up for you. And it's not only useful at the beginning of the project
1:21 but also at the end when it's time to deploy your application or publisher package
1:27 to PyPI, with cookie cutter.
1:29 We usually have everything already set
1:31 for that, it's very easy to create or modify and new cookie cutter template.
1:37 The simplest template is just a folder with some files.
1:40 But if you need something more advanced, cookie cutter got you covered with its simple templating
1:44 language. Cookie cutter helps you set some good and safe default settings for your
1:51 project. The most popular templates have been used and reviewed by thousands of developers.
1:56 If there was something wrong, or if someone noticed a security vulnerability,
2:01 they probably already reported and fix that,
2:03 so you can be sure that you are starting your project following the best practices and
2:08 I like to think about cookie cutter templates as getting a feedback from hundreds of developers
2:13 who contributed to that template.
2:15 A free feedback from people who have been writing python packages or Django applications for years.
2:21 And the best part is that you don't have to argue with them on what's the
2:25 best way of doing something. It has already been established,
2:28 and by using a specific template, you just follow those recommendations.