Join GitHub today
Welcome to the BlackBerry Native Plugin for Visual Studio wiki!
#Disclaimer - READ IT FIRST Please do remember that this project is supported by only one developer. I do it for fun, not the profit, in my spare time, whenever possible (as my wife + two kids demand also some time). I am not a BlackBerry employee, they only kindly pull some changes into their master repo and (probably?) review them.
If you accepted the challenge, feel free to star this project, fire any found issues or request next great feature. I will put my efforts and best knowledge to address them. Please keep in mind, that they must be somehow related to this plugin. I am NOT trying to save the world answering any BB10/Cascades/Qt/QML/OpenGL/C/C++ programming problems. Google for them, browse BlackBerry docs or ask on StackOverflow.com.
#Motivation I am a master mobile and .NET freelancer. Although for the last couple of years I was doing mostly C# projects for desktop and Windows Phone in Visual Studio, some time ago I had an option to work with BlackBerry technologies in C/C++ and Cascades on their latest BB10 OS. Even though I fall in love with the OS itself, the toolset distributed by BlackBerry was tiring and Momentics IDE instead of inspiring me for better job was driving me crazy! Do you know that feeling? Probably you do, as there are so few native applications in AppWorld!
Then I was very happy seeing BlackBerry creating a Plugin 1.0 for Visual Studio 2010. I removed it after 10 minutes after installation. After some time version 2.0 was released for Visual Studio 2012 and 2013. This one I uninstalled after 15 minutes, so was there a progress? Nope, plugin get simply slower and tried to download more stuff from the Internet. It was more messy, not compatible with previous edition of Visual Studio and what the hell, I still couldn't develop Cascades applications! Cascades is the best framework for mobile phones I saw and BlackBerry may be proud of it instead of hiding.
Should I expect something more? From corporate? Probably I shouldn't. But they did at least one good move. They made this plugin open-sourced. And this is a moment, when I entered the stage. At the beginning I was simply curious to see, how they did it. I was already interested in extending Visual Studio in the past (check my other project TytanNET or I helped with first version of PostSharp's plugin for Visual Studio), what gave me some background knowledge. Later, I thought, since I know, it works backward, why not to fix a couple of things here&there and check, if this whole solution is more developer-friendly. I already got all editions of Visual Studio and R# to perform all the refactorings for me. I didn't expect this code to put up heavy resistance. Until... I wake up after 5 months, during which I have totally rewritten 90% of the original plugin.
It's now far better, than this plugin used to be. Also my goal changed. I want now it to become a competitive product to Momentics. I want you as a developer to install it and do, whatever you need to develop an application for BlackBerry OS, renew you developer tokens, create new debug-tokens, download new NDKs and never ever be forced do install Momentics and launch it again. Maybe that action will trigger some thoughts inside the company to rethink their tools strategy. Please remember, details do matter!
#Is it really FREE and open-sourced? Yes, that's correct. Let's make it clear here - full source-code is available for free, no strings attached, even for use in commercial products.
The code you are looking at now is the result of months of my work. It's clean and simple. Above that I am a developer and want to create something useful for other developers. Hopefully at the end of the day using my software you will create an awsome application for BB10 OS. And that application will bring you millions!
Or if you are only interested in sources, maybe it will make your future Visual Studio integrations better, looking at tricks I have implemented. Or maybe you will see my coding-style and will hire me, to improve your extensions.
Read more details at Contribution section.
If you have any improvement in mind don't hesitate to put it on that list.