Bob Ray is going to take us through how to use his MyComponent package to take the pain out of creating Extras.
04:47:12 - [Applause] and that's that
04:46:01 - It's taken Bob over a year to create this Extra. It's free btw :)
04:44:19 - Bob takes baths
04:41:44 - I ask if Bob uses MyComponent to package MyComponent. Everyone's head expodes
04:39:08 - Also creates a GitHub READ_ME file formatted correctly for you
04:38:45 - It will create a table (for documentation) of your Properties. That's awesome
04:38:05 - MyComponents will move them for you, but not necessarily install the packages for you
04:37:34 - Bob says this is the most complex program he's ever built. When he started he had a full head of black hair ;)
04:37:00 - Can you include other packages as well? Almost, Bob says.
04:36:25 - (Bob was onto Snapshots before Snapshots were a thing)
04:35:45 - Even if you don't develop MODX Extra MyComponent could be handy to package up a site to import it elsewhere
04:34:47 - This is seriously some crazy *$@#
04:34:22 - What about the build file? Bob created a master build file to rule them all! That's just how he rolls. Literally he lives in an RV
04:32:03 - ExportObjects exports all of the build files. Clicking Build with package everything and creates your package transport zip file, which is ready for installation and distrubution
04:30:00 - (Something on lexicons and with without formal installations that went over my head)
04:29:50 - MyComponent will update your ~~ syntax appropriately once it's created them for you. This part is pretty much magic
04:29:00 - Bob asks why we didn't point out his typos!
04:28:00 - MyComponent will recursively process any Snippet and ones it includes
04:27:30 - Bob asks us all to cross our fingers (mine are typing though)
04:27:06 - This makes a lexicon entry on the fly: this->modx->lexicon('hw_file_nf~~File Not Found');
04:22:00 - Lexicon Helper sytanx example: hw_prop1_desc~~ Description for Property
04:20:58 - Bob's favorite this is that you can create your lexicon strings right in the code itself using a ~~ syntax (will try and post example, moving fast)
04:20:19 - Crowd is reminding Bob to continue spelling helloworld incorrectly as he did before
04:20:00 - It's 4:20
04:19:09 - One nice thing is when you set descriptions for things like Snippets they go both in the Manager description, and at the top of the code itself.
04:17:48 - Oh wow that was fast now that it isn't creating System Settings (Bob has theories why they slow the process down so much)
04:16:42 - Even resources can be included easily, all their properties can be set
04:15:34 - Bob is deleting stuff like crazy from the config file, just to make it a bit simpler
04:15:08 - I need to use PHPStorm more often. I'm just so set in my ways with TextMate!
04:14:35 - You should always make a namespace for your Packages (like for reals)
04:13:20 - Once multiple projects have been added you can switch between the two. Pretty neat
04:12:28 - Starting a hellowworld example (his typo not mine ;)
04:12:09 - Remove Objects and Files will delete all yoru stuff after bundling (incase you want to start over). Use with caution!
04:11:26 - Lexicon Helper will fix your code file properly if rewrite CodeFiles is set to true...further explanation to come
04:09:20 - If you set an element to be static it will be for you, but not for the user when installed (you wouldn't want it to be)
04:08:17 - You can connect property sets to a snippet right in the config.
04:06:30 - Bob's pulling up his website. hehe
04:05:34 - You can include / create System Settings by placing them in the config file. Awesome! Wow I've wasted a lot of time by not using this
04:05:09 - You start with no other files but the example config, everything else is generated from that
04:04:00 - You set all sorts of stuff in the config package name, description, version, release, contanct info
04:03:15 - The configuration file is just a big PHP Array
04:02:50 - Everything comes from the configuration file which is under mycomponent/_build/config/example.config.php
04:02:00 - Bob's showing an example that contains about two of everything (Resources, Chunks, Templates, Snippets) that he uses for testing MyComponent
03:59:00 - Creates all the resolvers and intersect objects needed for your package. Don't know what those are? Who cares MyComponent does.
03:58:10 - Bob just ran Bootstrap it creating a ton of files, and two System Settings in about 4 seconds
03:57:08 - System Settings take for ever to create (programmitcally)
03:56:46 - PHPStorm costs $99, Bob says if you value your sanity and time buy it right now
03:56:20 - By simply including the MyComponent snippet (uncached) in a resource a form will be created that allows you to set some settings for your component.
03:55:50 - Bob is showing us a fresh MODX install with just MyComponent installed. He's assuring us there's nothing up his sleeve...yet
03:54:01 - In order to use MyComponent you need to give you a little bit of flexiblity, but it's worth it becaues you'll save so much time
03:53:24 - MyComponents writes all your Lexicon files for you (which is awesome). Lexicon files are used to do things like set the name and description of things like System Settings
03:51:18 - Bob hates certain things about creating components, so he made an easier way