How To: Create A Cydia Tweak Or Application For iPhone, iPad And iPod Touch [In-Depth Article]

A couple of days ago we asked you if you had any ideas for a Cydia tweak, and we got a lot of feedback from you. After reading through some of this feedback I indeed saw some great ideas that would make very beneficial Cydia tweaks. After I started reading through your ideas, however, I realized that all these ideas are going to stay ideas unless someone takes an initiative to show people how one would go about making a simple idea for a Cydia tweak into reality.

Myself, personally, am no expert in the programming field. I have briefly touched programming throughout my life and understand a lot of technical concepts to do with programming, but I would in no way consider myself a “programmer”. This is okay, however; You do not need to be an expert in computer programming or even have experience in programming to turn an idea into reality. If you are truly committed to carrying out your idea, then you will find the means necessary to accomplish the task at hand. To cut things short here, what I am trying to say is, if you have a great idea for a Cydia tweak you do not need to be a programmer. You just need to be creative and resourceful.

In this guide from iJailbreak.com you are going learn how one would go about turning an idea for a Cydia tweak into a reality. I will briefly cover some resources for developing Cydia tweaks on your own if you feel comfortable programming, and I will also explain how you would go about creating a Cydia tweak without developing it yourself.

How To Make A Cydia Tweak

Before I start to explain how you would go about creating a Cydia tweak we need to identify the reason you want to create a Cydia tweak. In my opinion there are two reasons someone would want to create a Cydia tweak:

      1. I have a great idea for a Cydia tweak that I think others will enjoy and I think someone should create it because it would benefit a lot of people.
      2. I have a great idea for a Cydia tweak that I think could be sold and generate some revenue.

Before we move on any further you need to identify which position you are taking. If you are reading this article you obviously have an idea for a Cydia tweak, so you will need to come to a conclusion on why you want to make your idea into a reality.

If you have a great idea that you think someone should develop into a Cydia tweak for you because you think it would help a lot of people, then you can probably get away with getting it developed for free (or at a minimal cost). If you have a great idea for a Cydia tweak that you would like to sell, then you will need to be prepared to fork out the money to get it developed.

Nothing is wrong with either positions, but establishing why you want to develop your Cydia tweak is important.

The second thing you will need to think about if you are interested in creating a Cydia tweak is whether or not you are going to develop the tweak or if someone else is going to develop it for you:

      1. I am going to develop the Cydia tweak
      2. I am going to get someone else to develop the Cydia tweak

If you are going to develop a Cydia tweak you need to realize you will need to have at the minim basic knowledge of computer programming (objective C) and a lot of time on your hands. If you are going to get someone else to develop the Cydia tweak for you, you need to realize you may need to fork out some money.

From this point you should have a fairly solid understanding on why you are developing a Cydia tweak and how you are going to go about developing your Cydia tweak.

Creating A Cydia Tweak

This next section is going to be split up depending on whether you are going to develop a Cydia tweak by yourself or if you are going to be getting someone else to develop your Cydia tweak. Additionally it is further split up depending on whether you are going to get someone to create your Cydia tweak for others (meaning the developer owns rights to the tweak) or for you so you can sell it through the Cydia Store (you own the rights to the Cydia tweak). There is a lot of information shared so you may want to grab some coffee.

Develop A Cydia Tweak Yourself

If you are going to be developing a Cydia tweak yourself, I hope you realize that it is going to be a lot of work. This is not to turn you off, but if you are new to programming and want to create a Cydia tweak you are going to run into a lot of brick walls. However, once you nail your first Cydia tweak there is a lot of potential to succeed in the Jailbreaking Community.

Note: As I do not have a lot of technical knowledge in creating a Cydia tweak, and the point of this article is mostly directed to those who do not have technical experience in programming this section is going to be kept very short. Also, feel free to browse through the next section to learn more about planning your Cydia tweak.

Step 1) - The first thing you will need to do is begin learning computer programming. More specifically you will need to have knowledge of the objective C programming language/iPhone application development. If you are interested in learning objective C there are numerous books you can find online as well as numerous guides (I will leave this up to you for you to decide how you are going to learn objective C). Besides knowledge of objective C you will need to understand how Mobile Substrate works; As this is the framework that almost all Cydia tweaks function upon.

Here are some great resources below:

Step 2) - When you have knowledge of how Mobile Substrate works, and you have gotten yourself familiar with the objective C programming language/iPhone application development, you will need to begin writing your ideas for your Cydia tweak down on paper and planning out how you are going to create your Cydia tweak. The best way to do this is sketch wireframe drawings of the GUI of your tweak/application on paper. What I mean by wireframe drawings is quick sketches on how your Cydia tweak will function.

Step 3) - After you have a plan of action you will need to convert your wireframe drawings into a computerized format, that you can use when you begin programming, using Photoshop (or another similar program). You can find photoshop PSD files with GUI elements of the iPhone, iPod Touch and iPad at your disposal below:

      • Ultimate List Of iPhone, iPod Touch and iPad GUI Elements

Step 4) - After you have created the GUI of your tweak/application you will need to begin programming and testing your Cydia tweak. Your Cydia tweak should be compatible with multiple firmware versions and support multiple devices. I know what I have just said way over simplifies what needs to be done, but as I said before this is not a technical guide. Below are some resources when creating Cydia tweaks:

Step 5) -When you are finished creating your Cydia tweak you will need to upload it your Cydia tweak to a Cydia repository (community source) such as BigBoss or ModMyi.

Note: You will of course also need to decide whether you are going to be selling the Cydia tweak or are going to be making it free. If this is your first Cydia tweak my recommendation would be to make it free, as this is your first entry as a developer into the Jailbreaking community.

Update: Thanks to Ryan Petrich I have been able to compile a better and more technical resource for those looking to get started in Cydia development. Please click here to read it.

Get Someone Else To Develop Your Cydia Tweak

If you have decided developing a Cydia tweak from scratch, by yourself, is going to be too much work then your only other option is to get someone else to develop your Cydia tweak. Generally, simply writing a quick email will not be enough to spark interest from a developer. Thus, you will need to plan out your Cydia tweak in-depth. If you are going to be paying someone to have your Cydia tweak developed you will need to spend even more time planning out your Cydia tweak.

From this point on we will be further splitting the article up into two sections again, based on whether you are going to be selling your tweak or whether you just want someone to develop your Cydia tweak.

Tip: I personally recommend going the “Free” route because if you are paying someone else to develop a Cydia tweak for you, you also need to keep in mind you are going to constantly need their help updating the tweak and also making it compatible with new firmware versions. This is just something to keep in mind.

“Free” Cydia Tweak

If you simply want to have someone develop your Cydia tweak idea because you think it would be useful to yourself and others follow the steps below:

Step 1) - The first thing you are going to need to do is plan out your Cydia tweak. You will need to answer the following questions in a word document:

      • What is the purpose of my Cydia tweak (what does it do)?
      • Will this Cydia tweak benefit others, if so how?
      • Is my tweak specific to one Apple device? If so which one?
      • How does this Cydia tweak modify how my iPhone, iPod Touch or iPad runs? Is there a specific function it modifies (such as the lockscreen) or does it involve modifying numerous functions (such as the way sending and receiving a text message works)?
      • Finally give a quick break down on how the Cydia tweak will function (in a step-by-step format).

After you have answered the following questions you have planned out your Cydia tweak and it will be easy for someone else to understand what you hope to accomplish with your Cydia tweak.

Step 2) - The next thing you will need to do is find a developer who you think might be interested in developing your Cydia tweak. You can find Cydia developers by simply browsing through tweaks that are currently available through Cydia. Often times when you view a Cydia tweak you will see the name and email address of the developer who made that specific tweak.

Copy down this information and start sending emails to developers you think might be interested in creating your tweak (with the word document you created above).

Example Email:

Hello xxxxxxx,

My name is xxxxxxx and I would like to discuss with you an idea I had for a Cydia tweak that I think would benefit a lot of people. I was wondering if you could take the time to look over my Cydia Tweak Plan (attached to this email) and give me some feedback on what you think. Additionally, I was emailing to see if you would be interested in developing my Cydia tweak. It would not only greatly benefit your portfolio, but I think it would make a lot of buzz throughout the Jailbreaking Community.

If you do not have the time to develop my Cydia tweak or are simply not interested I was wondering if you could point me to someone who may be.

Thanks for reading my email, and I look forward to your reply.

Best regards,

xxxxxxx

 Note: Ensure you reply xxxxxxx with the developers name/your name.

Tip: Avoid emailing big time Cydia tweak developers. They will most likely not be interested. Aim for developers who are just starting out or do not have a lot of Cydia tweaks in their portfolio.

Step 3) - After you receive a response from one of the developers, talk to the developer further (on the phone or through an IM application) and ensure you are both on the same page. If everything turns out your Cydia tweak idea will hopefully come to life!

Note: If you are having troubles getting responses from developers you may need to take a look into hiring a developer.

“Paid” Cydia Tweak

If you have come up with a great Cydia tweak idea and think you could make a lot of money from your idea you may want to consider paying someone to develop the Cydia tweak for you. This will give you full rights to the Cydia tweak and allow you to make a profit from it. Versus getting a developer to develop your Cydia tweak for free where they have the rights to the Cydia tweak and can do what they please with it. While I personally do not recommend going this route, I will provide you some tips I have learned throughout the years when dealing with large scale projects.

Before we start, however, I am going to put some things into perspective. Meaning I am going to show you some examples of how much certain Cydia tweaks have generated in revenue.

  • BarrelThis Cydia tweaks adds animated transitions to your springboard pages. It was downloaded over 14,626 times with a price tag of $2.99. Meaning it has generated over $43,000 in profit.
  • Infinidock: This Cydia tweak makes the dock on your iPhone, iPod Touch or iPad scrollable. It was downloaded over 113,617 times with a price tag of $0.99. Meaning it has generated over $112,000.
  • DisplayOut: This Cydia tweak mirrors your iPhone, iPod Touch or iPad’s screen to an external monitor or projector. It has been downloaded over 243, 419 times with a price tag of $2.99. Meaning it has generated over $727, 822.

While these rough estimates do not include Cydia’s cut it is still impressive to see how much money certain Cydia tweaks have generated over the years. The point I am trying to get across is if you have a Cydia tweak idea there is a possibility to make a lot of money if you can market it correctly and get it developed correctly. You will need to keep in mind, however, it will require some money out of your own pocket and it is tough to maintain as you are not the one who developed it.

Step 1) - The first thing you are going to need to do is plan out your Cydia tweak. You will need to answer the following questions in a word document:

      • What is the purpose of my Cydia tweak (what does it do)?
      • Will this Cydia tweak benefit others, if so how?
      • Is my tweak specific to one Apple device? If so which one?
      • How does this Cydia tweak modify how my iPhone, iPod Touch or iPad runs? Is there a specific function it modifies (such as the lockscreen) or does it involve modifying numerous functions (such as the way sending and receiving a text message works)?
      • Finally give a quick break down on how the Cydia tweak will function (in a step-by-step format).

After you have answered the following questions you have planned out your Cydia tweak and it will be easy for someone else to understand what you hope to accomplish with this Cydia tweak.

Step 2) - The next thing you will need to do sketch out some wireframes on how the your Cydia tweak will work (meaning draw how your Cydia tweak functions step-by-step as if you were actually using it on your iDevice).

Step 3) - When you have these wireframes completed you will need to decide how much work you want to do yourself. As the next step in creating a Cydia tweak is creating GUI mockups out of your wireframes on Photoshop. If you have Photoshop experience I suggest doing this yourself, as you will save money. If you do not have Photoshop experience you will be required to outsource. There are a number of places you can outsource GUI design to including:

Note: Even if you are outsourcing the GUI design work you will need to have some way to convey your wireframe sketches to your selected contractor.

Step 4) - The next thing you will need to do is find a developer who you think might be interested in developing your Cydia tweak. You can find Cydia developers by simply browsing through tweaks that are currently in Cydia. Often times when you view a Cydia tweak you will see the name and email address of the developer who made that specific tweak.

Copy down this information and start sending emails to developers you think might be interested in creating your tweak.

Example Email:

Hello xxxxxxx,

My name is xxxxxxx and I was wondering if you would like to discuss a project I had in mind. I am looking for someone to develop a Cydia tweak which I think would benefit a lot of people. As I am wishing to sell the Cydia tweak through the Cydia Store when it is complete I am looking for a developer who is willing to work for a (set price or hourly rate).

Would be interested in taking on the development of my Cydia tweak?

If you do not have time or are not interested would you mind pointing me along to someone who might be? If you are interested in discussing my project, however, I can send you the exact project outline and GUI mockups I have created and we can discuss the project in more depth over the (phone/Skype).

I am looking forward to your reply. Thanks and best regards,

xxxxxxx

Tip: Avoid emailing big time Cydia tweak developers. They will most likely not be interested. Aim for developers who are just starting out or do not have a lot of Cydia tweaks in their portfolio.

Note: Ensure you eventually talk to your selected developer over the phone. If you are investing money you want to make sure you can trust your developer.

If you cannot find a developer in the Jailbreaking scene to develop your Cydia tweak (this should not be the case… keep on trying) then you can try places like Elance but often times there are not developers who have experience in this field on such places.

Step 5) - Once you find a developer that is interested in creating your Cydia tweak you will need to get them to sign an NDA (Non Disclosure Agreement) before you send them your detailed project plan and GUI mockups. This will ensure they do not steal your Cydia tweak idea. After they sign the NDA you can tell them in-depth about your Cydia tweak idea and they will quote you a price (DO NOT send them your GUI mockups or in-depth project plan before they sign the NDA).

When you receive the NDA back, the developer should be able to accurately quote you a price for the project. If you accept the quoted price the developer will begin creating your Cydia tweak.

Tip: Ensure you get multiple quotes, do not only get one quote.

Step 6) - When the developer as created your Cydia tweak ensure you have ways to communicate with the developer in the future because when Apple releases new firmware files it may need to be updated.

Step 7) - Now that your Cydia tweak has been created you will need to upload it to a Cydia hosting repository such as BigBoss or ModMyi. Before you do this you will need to decide a price for your Cydia tweak. Often times I think the best price for a Cydia tweak is $0.99 because you will sell a lot more than if you charge anything higher. As a rule of thumb I would only sell a Cydia tweak for more than $0.99 if it seriously modifies the way you use your iPhone, iPod Touch or iPad (In other words if it is a large project).

After you decided a price for your Cydia tweak, and your package has been accepted to a repository it will appear on Cydia, and people can begin purchasing/using it.

Step 8 ) - Now that you have your Cydia tweak in Cydia ensure that you notify iPhone, iPod Touch or iPad blogs because they are almost 100% guaranteed to cover your tweak if it is helpful/useful. This will get your Cydia tweak recognized. I also suggest creating a YouTube video of your Cydia tweak in action so others can see how it works visually.

Conclusion

If you managed to get through this article, congratulations! There was definitely a lot of information shared in this article and I hope it will help people turn their ideas of a Cydia tweak into reality. The reason I wrote this article is because I do not think there is enough resources for developing Cydia tweaks, and I hope this guide will further strengthen the Jailbreaking Community by engaging the most important people – You (the Jailbreakers).

I would love to hear any thoughts you have after reading this article in the comments section below. Of course if you follow these steps and actually get your Cydia tweak developed please let me know in the comments section below as well. I would love to know :)

Don't forget to follow iJailbreak.com on Facebook, Twitter and Google+.
  • Jucapeor

    Excellent article!

  • Danny

    Great article I’ve been looking everywhere do an article that shows how to do this now can you make an article on how to make my own repo because I want my tweaks on my own repo that would be best

  • Nom

    did i miss something? I still dont know how to build a cydia tweak.. was it even covered?

  • http://twitter.com/JadenEllett Jaden Ellett

    Yes, re-read the Develop A Cydia Tweak Yourself section. I gave links to the best resources available to teach you how to develop Cydia tweaks. 

  • http://twitter.com/JadenEllett Jaden Ellett

    Thanks, glad you liked it! We have a great article on making your own Cydia repo. Just search our site and you will find it no problem :)

  • Caddie1

    Thank you very much best one in the whole Internet

  • Aayush

    i have made a application on my mac through xcode for iphone. now i wanted to keep the application on cydia , is that possible ? if then please help me and say me what to do ?  

  • Skore

    Wow! A very good article, I will try to do something with that, thank’s a lot!

  • http://www.facebook.com/profile.php?id=1597434950 Amjad Abdullah

    from where can i download c programmin application? and i am using widnows

  • RyanTCB

    I have to agree with Nom. You don’t tell how to build a Cydia tweak. You say learn programming design a tweak put it on a repo with Cydia. Not once or anywhere does it explain how to use mobilesubstrates. It gives a link to explain what they are but not how to access and overwrite them.

  • picksomething you hate ->

    !@#$… have you created any applications, tweaks??? lol..

  • annoyed

    i have made a tweak and its free and lets people put their screen on a television, if they have the (right cables) BUT NO ONE IS BUYING IT such a waste of time :'(