This session is aimed at the beginner DNN developer. They may have already built 1-2 DNN extensions, or they may not yet have the confidence to build one.
Have you found building extensions in DNN to be slow, cumbersome, or absolutely difficult? Are you having trouble simply getting started? This session will help you learn the best ways to get started building a DNN module from scratch, as well as how to begin building a DNN module based on another open source extension. You'll walk away from this session with the confidence to build anything you want in DNN.
1. Build a Module in
Minutes
Will Strohl
@WillStrohl | @UpendoVentures
3. We Want Your Feedback!
Download the DNN
Summit Mobile App now
and take the survey at the
end of the conference to
be entered to win a $100
Amazon gift card!
4. Will Strohl
• Using DNN since 2003
• CEO & Founder, Upendo Ventures
• Former CEO, Hotcakes Commerce (2013-2017)
• Former DNN Corp employee
• DNN MVP since 2013*
• Leader of the Awareness EAG
• DNN Author & Technical Editor
• Founder of DNNCon (Day of DNN)
• Founded 2 DNN User Groups*
• 25+ open source projects
https://upendoventures.com/How/People/Will-Strohl
“hismightiness”
@WillStrohl
5. Upendo Ventures
We use technology to help your business change people’s lives
• Platform & Evoq
• E-Commerce
• Implementations
• Integrations
• Custom Modules
• Upgrades & Downgrades
• Custom Themes
• Training
• Fixing stuff other people did ;) @UpendoVentures
UpendoVentures.com
7. Agenda
• Build vs. Buy
• Types of Extensions
• Development Templates
• Module Walkthrough
• Development Tips
• Best Practices
• Resources
8. Build vs. Buy
DNN Store
https://store.dnnsoftware.com/
GitHub
https://github.com/search?q=dnn&type=Repositories
9. Types of Extensions
• Authentication Provider
• JavaScript Library
• Language Pack
• Library
• Persona Bar Plugin
• Provider*
• Skin Object
• Theme (and Container)
• Module
10. Module Templates
Current
• Christoc
http://bit.ly/christocdnn
• DNN MVP
http://bit.ly/dnnmvptemplate
• DNN 8 Templates
http://bit.ly/ashdnntemplates
Older (not very relevant)
• Social
http://bit.ly/dnnsocialtemplate
• MaxiomTech
http://bit.ly/maxiomdnn
• Gooddogs
http://bit.ly/dnngooddogs
• Subodh
http://bit.ly/dnnsubodh
• IRobinson
http://bit.ly/irobinsondnn
and many others over the years…
11. Module Templates
generator-dnn
• By DNN MVP, Matt Rutledge
• Based on npm, yarn, yeoman
• Includes MVC, SPA, Persona Bar
• Builds in DesktopModules
https://github.com/mtrutledge/generator-dnn
https://www.npmjs.com/package/generator-dnn
generator-upendodnn
• By yours truly ;)
• Fork of generator-dnn
• Includes MVC, SPA, Persona Bar,
Webforms, Libraries, Scheduler,
Hotcakes*
• Builds outside of the website
https://github.com/UpendoVentures/generator-
upendodnn
https://www.npmjs.com/package/generator-
upendodnn
13. Best Practices
• Use the DNN API
• Use SQL provider tokens
• Be Windows Azure-friendly
• Support localization
• Use DNN form patterns
• Encode SQL scripts as UTF-8
• Look in DNN first
• Re-use DNN functionality:
Controls, CSS classes, plugins,
etc.
• NEVER do core code changes
• Test using EVS
http://evs.dnnsoftware.com
14. We Want Your Feedback!
Download the DNN
Summit Mobile App now
and take the survey at the
end of the conference to
be entered to win a $100
Amazon gift card!
16. Thank You So Much!
We use technology to help your business change people’s lives
UpendoVentures.com
548 Market St. #65401
San Francisco, CA 94104
(650) 381-9160
solutions@upendoventures.com @UpendoVentures