SymfonyCasts's profile picture. Injecting Unicorns and Rainbows back into learning PHP // The official way to learn Symfony: http://SymfonyCasts.com

SymfonyCasts 🇺🇦

@SymfonyCasts

Injecting Unicorns and Rainbows back into learning PHP // The official way to learn Symfony: http://SymfonyCasts.com

Symfony Bundle Development #32: With code and tests locked in, it's time to give our bundle a little polish 💅 — add metadata, clean up docs, tidy exports, and bring in consistent, automated code styling with PHP CS Fixer. symfonycasts.com/screencast/bun…


Symfony Bundle Development #31: Bundles don't get to be picky about their dependencies. So, let's widen those constraints and take our test suite on a tour of Symfony versions - including the wild, un-housebroken dev builds. symfonycasts.com/screencast/bun…


Symfony Bundle Development #30: Leveling up! 🚀 Let’s upgrade our bundle's integration test to use the object translator service - full entities, real database, the whole deal. symfonycasts.com/screencast/bun…


Our ONE sale of the entire year is still available for Cyber Monday! Get 40% OFF SymfonyCasts (yes, even if you’re already a subscriber). Let's build something awesome! symfonycasts.com/blackfriday


We don’t do sales often. In fact... 🎉 This is our ONE sale of the entire year. Get 40% OFF SymfonyCasts (yes, even if you’re already subscribed). Go learn something awesome! symfonycasts.com/blackfriday


Let's gooo #SymfonyCon Amsterdam! Come by our booth to grab some socks 🧦 and swag!

SymfonyCasts's tweet image. Let's gooo #SymfonyCon Amsterdam! Come by our booth to grab some socks 🧦 and swag!
SymfonyCasts's tweet image. Let's gooo #SymfonyCon Amsterdam! Come by our booth to grab some socks 🧦 and swag!

We're so excited for #SymfonyCon tomorrow! 🚀

SymfonyCasts's tweet image. We're so excited for #SymfonyCon tomorrow! 🚀
SymfonyCasts's tweet image. We're so excited for #SymfonyCon tomorrow! 🚀
SymfonyCasts's tweet image. We're so excited for #SymfonyCon tomorrow! 🚀
SymfonyCasts's tweet image. We're so excited for #SymfonyCon tomorrow! 🚀

We’ve got unit tests, which is fantastic - but nothing beats integration tests that spin up a real Symfony app and show our bundle hard at work. 👷🏽👷‍♀️ symfonycasts.com/screencast/bun…


Our bundle has been living at home, mooching off our parent app's dependencies. Time to cut the apron strings and set it up with its own - and make sure it can run its tests independently, too! symfonycasts.com/screencast/bun…


Step 2 in managing object translations in our bundle: an import command to load translated values - and we'll handle a bug fix along the way. symfonycasts.com/screencast/bun…


This bundle is nearly ready for a 1.0 release! The final feature: managing object translations. Step one: an export command to extract all translatable fields. Let's roll! symfonycasts.com/screencast/bun…


Like any other service your bundle provides, console commands need a little manual wiring. Let's roll up our sleeves, hook up our warmup command - and squash a few sneaky bugs while we’re at it! symfonycasts.com/screencast/bun…


Bundles can totally have their own commands! Let’s create one to prepare the translation cache to keep apps snappy. symfonycasts.com/screencast/bun…


Okay, our ObjectTranslator class is getting a bit complex - let's refactor the Doctrine logic into its own class. Phew, that's better! symfonycasts.com/screencast/bun…


Add extra context to your PHP classes with zenstruck/class-metadata. This lightweight package lets you define short, readable identifiers for your classes - known as aliases - and attach custom metadata directly to them. symfonycasts.com/blog/package-s…

SymfonyCasts's tweet image. Add extra context to your PHP classes with zenstruck/class-metadata. This lightweight package lets you define short, readable identifiers for your classes - known as aliases - and attach custom metadata directly to them. 
symfonycasts.com/blog/package-s…

It's alllliiivvveee 🧟! Our Caching is up and running! Let’s make it customizable with more bundle config - and see that cache tagging in action. symfonycasts.com/screencast/bun…


Performance boost round 2: we'll Use Symfony’s Cache Contracts to cut DB queries - and check out cache tagging! symfonycasts.com/screencast/bun…


Time for a Performance boost! We can cut down database queries with memoization (love that word) and use PHP’s WeakMap to keep memory in check. 💥 symfonycasts.com/screencast/bun…


Our bundle could use a Twig filter. Let's add one and use a Twig runtime to keep things snappy! Oh, and shhh... we'll look at hidden services too. 🕵️‍♀️ symfonycasts.com/screencast/bun…


Our translations work 🥳 but relying on the idea that all entities will have a getId() method? Kinda risky. Let’s make it rock-solid by letting Doctrine handle ID fetching - no hoping and wishing needed! symfonycasts.com/screencast/bun…


Loading...

Something went wrong.


Something went wrong.