Into the Box 2022 is in the bag, and we had a great time, with 10 great pre-conference sessions, 5 action packed full day workshops, 2 days on site and online for the conference, and many great conversations in the hallway track, at HappyBox and at every meal.

We've rounded up all the great content, videos on CFCasts, slides, repos and code, and compiled this list for you.

Into the Box 2022 Videos are exclusively available on CFCasts for Into the Box 2022 Conference and or Virtual Ticket Holders Only before December 24th, 2022. On December 24th, as an early Christmas Present, we will start releasing the Into the Box 2022 videos (pre-conference and regular conference) for all CFCasts Subscriptions holders to enjoy over the holidays.

Keynotes

Day 1 Keynote: Watch for Free on YouTube

Slides available here

Day 2 Keynote: Watch for Free on YouTube

Slides available here

Day 1 Sessions

Jon Clausen - cbCommerce - A flexible, modular e-commerce solution

In this session, you'll learn about a full featured e-commerce module from Ortus Solutions, cbCommerce. cbCommerce is built with Enterprise e-Commerce in mind and it uses ContentBox modularity to allow non-technical users to manage inventory and pricing. Additionally, it has built-in support for shipping, sales tax/VAT, event and inventory lifecycle pricing and multiple payment processor support.

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/jon-clausen-cbcommerce-a-flexible-modular-e-commerce-solution

SLIDES: https://drive.google.com/file/d/11dL0VrSmgCsZKlR-NFFTjfOgefMhNlh-/view?usp=sharing

Brad Wood - CommandBox Hidden Gems/Top Modules

CommandBox has a lot of features out of the box so to speak, but it can also be extended via a modular architecture. In this session, we'll cover the best features, and top modules you need to be using in order to increase your productivity and get the most out of CommandBox.

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/brad-wood-commandbox-hidden-gemstop-modules

SLIDES: https://drive.google.com/file/d/1Wh5G1MmIEH_iezLxfDQGvcdV8sqFjAXB/view?usp=sharing

Luis Majano and Grant Copley - cbfs: Abstract, Extend, Integrate Any File System

cbfs is short for ColdBox File System. It is an abstraction API to help you integrate with any file system, from S3, Local, SFTP, Ram, Mocks, and much more. Built to be fluent and human friendly, working with file systems via cbfs will give your applications the ability to abstract, extend and integrate with ANY file system.

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/luis-majano-grant-copley-cbfs-abstract-extend-integrate-any-file-system

SLIDES: https://docs.google.com/presentation/d/1vW81na3nXJ77xmqbTlQpFxQ63_KhJ-RjDBjzFbcVMrk/edit?usp=sharing

REPO: https://github.com/coldbox-modules/cbfs

CODE: https://github.com/grantcopley/cbfs-itb-2022-demo

Nolan Erick - Web Components in Your CFML Application

Web Components provide a modular way to build a consistent design system and user experience across your entire application. Instead of copy/pasting the same chunks of coded into various places, you can have a JavaScript/HTML expert focus on getting the UX correct, without them needing to worry about what's happening in the CFML layer at all. Web Components offer reusable functionality on the front-end, with native JavaScript. They are a great middle-ground between standard request/response based CFML applications, and apps that aren't quite ready to move to a full-on JavaScript SPA framework. Web Components themselves are 100% native JavaScript - no new libraries required! Let's learn how Web Components work, then look at integrating them into a CFML application -- I promise it's easier than you think! Target Audience: Developers looking to learn more about writing reusable JavaScript and UI components that are platform independent. This talk will spend a little time going over connecting the front-end code to a CFML application, but attendees should already be well versed in CFML and understand how to build a JSON API endpoint. Main Takeaways: - Creating your first Web Component - Interactivity with Web Components - Connecting to a CFML back-end - A quick look at using Lit to build things - Pros and Cons - Next steps and other resources

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/nolan-erck-web-components-in-your-cfml-application

Gavin Pickin - Alpine.js - Declare and React

In this session we will introduce the power of Alpine.js as a modern, lightweight, declarative and reactive Javascript framework that can be embedded on any webpage without any need of webpack or complicated build processes.

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/gavin-pickin-alpine.js-declare-and-react

SLIDES: https://drive.google.com/file/d/1Qi9acgwcgjpSRmGsF-KWZclyI3-LrghH/view?usp=sharing

CODE: https://github.com/gpickin/alpinejs-training

Brad Wood - Securing and Tuning CommandBox Servers for production

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/brad-wood-securing-and-tuning-commandbox-servers-for-production

SLIDES: https://drive.google.com/file/d/1oi6CF1p5d9qFjKQO1kcP5koCg294LYTF/view?usp=sharing

Grant Copley - Sublime Reactivity with CBWIRE

CBWIRE is a ColdBox module that makes building reactive, dynamic, and modern web applications a joy without leaving the comfort of CFML. Join us as we review how to add reactivity to your apps with almost no JavaScript, as well as look at the new features included in CBWIRE’s latest release.

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/grant-copley-sublime-reactivity-with-cbwire

SLIDES: https://docs.google.com/presentation/d/1E5EqFeG9RUV8qFxoA_I_eUO-W132e7Hr6cgYB7HLGRA/edit?usp=sharing

REPO: https://github.com/coldbox-modules/cbwire

CODE: https://github.com/grantcopley/cbwire-examples

Abram Adams - Writing Command Line Utilities With CommandBox Modules

CommandBox has opened up a modern world for CFML, but there's power in this tool that exceeds simply spinning up a cfml engine on the fly, or running arbitrary code on the command line (which are two awesome features, btw.). Easily write CommandBox Modules to standardize build processes, or to wrap around complex operations, or to make silly games. In this session we'll see how easy it is to create a CommandBox command, how we can effortlessly leverage the built-in help system and how quickly we can spice things up by installing existing modules, all while we build a good ole choose your own adventure game. We'll then learn how to publish our CommandBox Module to the world! Sound fun? [Yes/No] :> Yes

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/abram-adams-writing-command-line-utilities-with-commandbox-modules

SLIDES: https://drive.google.com/file/d/1yxCIJ1AR-lkNbpbHYn1g1bUnlIcB_CGx/view?usp=sharing

Scott Steinbeck - Advanced PDF Generation + Building a gitbook Markdown conversion process

Take a dive deep into the undocumented features of Flying Saucer (the engine behind cfDocument) in pursuit of creating a pdf with page numbering, context-aware chapter headings, table page breaks, and more.

Then we will spend some time digging into markdown conversion using a java library Flexmark to handle many aspects of markdown conversions including tables, auto-linking, embedded YouTube, etc.

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/scott-steinbeck-advanced-pdf-generation-+-building-a-gitbook-markdown-conversion-process

SLIDES: https://slides.com/uniquetrio2000/advanced-pdf

Seth Stone - Quick Start for CI/CD Automation on AWS

In this talk we'll demonstrate using CommandBox to generate CloudFormation templates on-the-fly that deploy to AWS as fully-configured and fully-automated CI/CD pipelines. Then we'll further explore how to customize the system for your application by securely injecting environment variables (secrets), automating testing with TestBox and configuring auto-scaling. In less than an hour we'll accomplish what would normally take days to piece together from scratch using AWS documentation alone.

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/seth-stone-quick-start-for-cicd-automation-on-aws

REPO: https://github.com/sethstone/commandbox-cicd-templates/tree/master/templates/aws-fargate

Dan Card - Unpacking The Box - Why so many boxes and what do they do?????

Coldbox, TestBox, Wirebox, Rulebox, CommandBox, Forgebox, CBElixer, CBSwagger, Colbox MVC, Coldbox HMVC, Coldbox Relax, ContentBox, CacheBox, MessageBox, CFConfig, Quick, CBORM, QB, CBAuth, CBSecurity, CBLivewire, Codechecker, DocBox, DotENV, CB HostUpdater, CFMigrations, CFMongo, CFRedis, Cors, ColdBox Mail Services, CB Validation, CBStreams, CBCollection, Hyper, CB Elastisearch, LogBox, Mementifier, .......you get the idea. There are a lot of “boxes”. What are they and what do they all do???? Are they all necessary??? Do I need to learn all of them???? This session will “tell the story” of all the boxes based on the problems they are trying to solve. We’ll start from the metaphorical “blank sheet of paper” at the beginning of a web project and we walk and talk through its planning and development, we’ll anticipate the real world snag and difficulties that we and the team will go hit and show how “there’s a box for that”.

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/dan-card-unpacking-the-box-why-so-many-boxes-and-what-do-they-do

Shawn Oden - I’m Just Here For The T-Shirt

I've been a professional geek for over 20 years, but I still feel like I'm out of my zone. Technology moves so fast. There are so many things to know. Everyone is so much smarter than me. I don't know what I'm doing, and it's just a matter of time before someone finds me out. Or something like that. Imposter Syndrome is a problem. But it can be dealt with.

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/shawn-oden-i_m-just-here-for-the-t-shirt

SLIDES: https://slides.com/codefumonkey/i-m-just-here-for-the-t-shirt-itb2022-flat

Daniel Garcia - How to Debug Your CF Apps

How to debug your CF Apps. Using cbDebugger, Fusion Reactor, bundled Lucee and Adobe ColdFusion debugging, as well as good old fashioned writedumps and emails to figure out what is going on.

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/daniel-garcia-how-to-debug-your-cf-apps

SLIDES: https://drive.google.com/file/d/1cfzazJIvuGwemYkIamNY3_Ws_2lCQlAV/view?usp=sharing

John Farrar - Modernizing Your Vue Developer Skills

What has changed in Vue 3? We will talk about how Vite upped the game over WebPack, why Pinia is the update for Vuex, ViTest is the new testing standard, and why it’s time to add in tools like VueUse. Oh, don't forget to throw in TypeScript.

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/john-farrar-modernizing-your-vue-developer-skills

SLIDES: https://drive.google.com/file/d/1YGHHf_iaYyL8QFzwj-l7DQkW0U-Ab2QO/view?usp=sharing

CODE: https://github.com/sosensible/preso

REPO: https://github.com/sosensible/taskbox

Day 2

Eric Peterson - cbq — Jobs and Tasks in the Background

Many actions in our applications need to happen in the background. This could be because the job takes a long time, for a snappier user experience, for visibility into what jobs are running, working with websockets, or because another system processes the jobs. Message Queues are an ideal tool for this job, but setting them up hasn't always been easy. cbq aims to make this easier for you by providing a protocol-based interface to multiple queue backends including the ColdBox Async engine, databases, and RabbitMQ. Learn how to set up a queue and see the benefits it brings to your application.

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/eric-peterson-cbq-jobs-and-tasks-in-the-background

Daniel Garcia - ContentBox 101

This session will give you an introduction to ContentBox CMS, what it is, what can you do with it, and why you should consider ContentBox for your next ColdFusion/CFML project. ContentBox is a professional open source (Apache 2 License) modular content management engine that allows you to easily build websites, blogs, wikis, complex web applications, and RESTFul web services. It can also be used as a full Headless CMS or a hybrid CMS. Built with a secure and flexible modular core, designed to scale, and combined with world-class support, ContentBox will get your projects out the door in no time. ContentBox CMS can be deployed to any ColdFusion/CFML engine or any Java Servlet Container.

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/daniel-garcia-contentbox-101

SLIDES: https://drive.google.com/file/d/11KVlkyNbgk7jXdi_ZQ9m05Hn06sOn3Rp/view?usp=sharing

Jon Clausen - Building Collaborative Applications with Websockets and MQ Services

Learn how to leverage the power of websockets and message queues to build collaborative applications, which provide the immediate feedback to the user and update in real-time.

Say good by to polling and interval refreshing of your applications. By leveraging MQ Services and Pub/Sub technology, you can build applications which allow multiple users to collaboratively access or edit the same content, and see updates made in real time.

In this workshop we will leverage RabbitMQ and Coldbox event interceptions to create and demonstrate the power of collision-free collaboration on applications, as well as providing helpful, routine notifications for your users.

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/jon-clausen-building-collaborative-applications-with-websockets-and-mq-services

SLIDES: https://drive.google.com/file/d/1lF9PDnlDE08_YZmb6hDWg6BFOTvZEltD/view?usp=sharing

CODE: https://drive.google.com/file/d/1XgoF8nc5vx3bgkaPcBhgtx-wwR903z06/view?usp=sharing

Esmeralda Acevedo & Javier Quintero - Off with their heads → ContentBox 5 : Headless CMS

In this session you will learn what a headless CMS is, and why you should use this type of CMS. You will also see the ContentBox 5 “Headless” feature in action

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/esmeralda-acevedo-and-javier-quintero-off-with-their-heads-contentbox-5-headless-cms

SLIDES: https://drive.google.com/file/d/19zM9SOpEBGfdBeNGL_d5v3ZNFqp0BJQm/view?usp=sharing

Gavin Pickin - Building a CFML API powered Quiz Game with VueJS and deployed with SPA and Android + more

In this session, we will be building on top of the Developer Feud Quiz Game REST API I built in Online CF Meetups and Adobe Developer Week which I hope we get to play at Happy Box. We will see how I built a New VueJS Quasar App for the Multiplayer Admin and Leaderboard side of the game. To finish, we will deploy to SPA and Android and Windows just because we can!

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/gavin-pickin-building-a-cfml-api-powered-quiz-game-with-vuejs-and-deployed-with-spa-and-android-+-more

SLIDES: https://drive.google.com/file/d/13t9dQeG9xPZwgldHuBY-QqP9BvLeXyhm/view?usp=sharing

REPO: https://github.com/gpickin/ITB-2022-BoxWarsGame-presentation

George Murphy - Configure ContentBox 5 in the Cloud the easy way

We have a new way to easily deploy ContentBox 5 with Environment Variables. How cool is that? We will use Cloud Formation to quickly create an Ortus AMI and have it running very in a very short amount of time. This presentation is for the beginner or intermediate user.

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/george-murphy-configure-contentbox-5-in-the-cloud-the-easy-way

SLIDES: https://drive.google.com/file/d/16XhGjwZRexncK-8Akin1MqSKWxS0OmM8/view?usp=sharing

REPO: https://github.com/murpg/murpg.github.io/blob/master/managing-new-site.md

CODE: https://gist.githubusercontent.com/murpg/541bb15dcb802e04feed366305552b11/raw/05d54ccb2ba5bb6641cbcd24868c1a10b7b5e6c5/addToHosts.ps1

Eric Peterson - cbPlaywright — End-to-End Tests with Playwright and TestBox

Playwright is end-to-end testing tool by Microsoft. It can be used to simulate a browser visiting your website like Selenium and Cypress. The real fun for us comes from the Java SDK for Playwright which we can use to run Playwright from our TestBox tests! In this session you will learn how to get started testing your website end-to-end with Playwright and TestBox.

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/eric-peterson-cbplaywright-end-to-end-tests-with-playwright-and-testbox

Luis Majano - To the future with cbFutures!

In this session, we will explore the asynchronous and parallel programming constructs built into ColdBox 6. Java has supported a robust and functional approach to asynchronous programming since JDK8 and now it is available to us all in the Coldfusion (CFML) ⚡ World! To the future!

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/luis-majano-to-the-future-with-cbfutures

SLIDES: https://github.com/lmajano/to-the-future-with-cbFutures

Nolan Erck - I'm Still Scared of Aspect Oriented Programming!

So you’ve figured out what Model View Controllers do, and even wrapped your head around using Dependency Injection for bean management. Excellent! But that pesky Aspect Oriented Programming (AOP) layer is still a complete mystery! It’s not that bad, I promise. And in this talk we’ll go over the basics of what AOP does, plus show you some ways to implement it in your applications. There are several AOP libraries available in CFML -- you can use any of them in your existing applications, without needing to do a complete rewrite of your code. Let’s learn how!

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/nolan-erck-i_m-still-scared-of-aspect-oriented-programming

Brad Wood - ColdBox Task Scheduling Demystified

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/brad-wood-coldbox-task-scheduling-demystified

SLIDES: https://drive.google.com/file/d/1FQX566l4lqgYz4jfqkHVXxXwL7abTKi0/view?usp=sharing

Scott Steinbeck - Building Modules

Often times you have a common problem in development that you know there has to be a common solution to. If you come to the conclusion that there is not a solution easily available to you, your next option is to find a solution in another language, or build it yourself. The task seems daunting but I assure you it is easier than ever. In this session, you will learn about how to create a module from scratch and set it up to be used as a: standalone module, a coldbox module, or a commandbox module. You will also learn how to create a module as a wrapper (from a java library) or convert it from another language like javascript.

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/scott-steinbeck-building-modules

SLIDES: https://slides.com/uniquetrio2000/building-coldbox-modules

Dan Card - What I learned about Mental Health from my computer and its network.

With all the conversations about self care, self help, counseling, higher powers, identity, defining ourselves, being defined, alone time, group time, isolation, introversion extroversion, no-traversions and so on, I found myself more and more thinking that it was just as easy to get lost and stressed by all the things you “should” be doing as it was to get lost in the “life stuff” that was causing issues in the first place. As I tried to untangle some of these things, I found myself wishing there was a framework or “meta” framework where I could start attaching concepts so I could at least have a starting point to think about them. Then I found one right in front of me that I used every day.

CFCASTS LINK: https://cfcasts.com/series/into-the-box-2022/videos/dan-card-what-i-learned-about-mental-health-from-my-computer-and-its-network