In this DNN-Connect 2019 session, we discussed a new architecture to use to build your extensions. This allows you to have and manage your various DNN extensions all in one solution.
3. Will Strohl
• CEO & Founder, Upendo Ventures
• Leader of the Awareness EAG
• Former CEO, Hotcakes Commerce
• Former DNN Corp employee
• Using DNN since 2003
• DNN MVP since 2013*
• 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
4. Upendo Ventures
• Platform & Evoq
• E-Commerce
• Implementations
• Integrations
• Custom Modules
• Upgrades & Downgrades
• Custom Themes
• Training
• Fixing stuff other people did ;)
@UpendoVentures
UpendoVentures.com
We Use Technology to Help Your Business
Change People’s Lives
9. Agenda
• Build vs. Buy
• Types of Extensions
• Development Templates
• Module Walk-Through
• Development Tips
• Best Practices
• Resources
10. Build vs. Buy
• Question:
• How much is your time worth?
• DNN Store
• https://store.dnnsoftware.com/
• GitHub
• https://github.com/search?q=dnn&type=Repositories
• Forge
• http://dnnsoftware.org/Extension-Library
11. Types of Extensions
• Authentication Provider
• JavaScript Library
• Language Pack
• Library
• Persona Bar Plugin
• Provider*
• Skin Object
• Theme (and Container)
• Module
13. 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, Personal Bar,
Webforms, Libraries, Scheduler,
Hotcakes*
• Builds outside of the website
https://github.com/UpendoVentures/generator-
upendodnn
https://www.npmjs.com/package/generator-
upendodnn
15. 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
16.
17. Upendo Ventures
Final Q&A
We use technology to help your business
change people’s lives
UpendoVentures.com
solutions@upendoventures.com
(650) 381-9160
548 Market St. #65401
San Francisco, CA 94104