I decide to peek inside the Twitter Windows 8 App package to see what language they are using and to see if I can find any open source projects being used within. Well, I found some interesting stuff…
How to view inside the package
You can view any Windows 8 app package that is installed on your computer as it resides within the following folder:
Each package has it’s own folder within that folder. Here’s the full path to the package folder where the Twitter apps files reside:
The “x64” in the folder indicates that I have the Intel dependent 64-bit version of the app. If you have a Windows RT tablet, then you’ll have a different package that could either just be compiled for ARM or it could be different source code too.
FYI: You wont have permissions to view the contents of the WindowsApp folder by default. You can grant yourself access by opening up this folders Advanced Security Settings dialog and setting your local user or Administrators group as the “Owner” of the folder. This will allow you to peek within without messing up any other permissions related to the folder. However, please do this at your own risk as I cannot take responsibility if you mess anything up.
Twitter App Package Contents
Here’s a screenshot of the root view of the Twitter apps package folder:
Written in XAML
See all the
.xaml files (for example the
Local Data Storage
The app does persist some data local (your recent tweets, etc.) I kind of wondered what they were using to do so,and now I know… The app uses SQLite as gleamed from the
While the app itself is NOT open source, they did decide to utilize a couple open source tools within the app. The tools used are:
- Callisto – a helpful toolkit containing some utilities and UI controls to help complete your app’s Windows UI style quickly as well as consistent with the Windows UI guidelines.
- JulMar MVVM Helpers – a set of classes for developers to help them build Model-View-ViewModel oriented applications.
- WinRT XAML Toolkit – a set of controls, extensions and helper classes for Windows Runtime XAML applications.
Lots of Images