Mycli 1.0 - Kickstarter Success Story
Written by Kay Ewbank   
Friday, 07 August 2015

Wondering how to fund your great idea for an app? Maybe the answer lies with Kickstarter as mycli, a command line interface for MySQL, MariaDB, and Percona demonstrates.



When Amjith Ramanujam wanted to write a CLI for MySQL as a replacement for the MySQL client he turned to Kickstarter and raised $4,804 from 161 backers to fund the coding. The project was launched in April this year, had reached the required amount in a month and Version 1.0 of mycli was publicly released by the end of July.

In case you've never come across this route to crowdfunding, unlikely but not impossible, the Kickstarter site lets people with a creative idea set up campaign so that people who find it interesting can donate funds with a reasonable degree of confidence on both sides. No money changes hands until the campaign total is reached. The campaign creator retains 100% ownership of the work, and the backers usually receive some benefit – discounted prices for a product, or for a book if you’re backing an author; or a copy of the app if you’re backing an app. Kickstarter backers are also usually acknowledged and this is the case for mycli. 

In the case of mycli, Ramanujam had already written pgcli. a similar tool for PostgreSQL, initially for his own use. This led to requests from MySQL users requesting a MySQL equivalent, and he launched the Kickstarter campaign to fund the development time.

The result is a tool with auto-completion and syntax highlighting intended as a replacement for MySQL client. which works with MySQL, MariaDB and Percona. It is written in Python and works in Python 2.6 to Python 3.4. It has been tested on Linux and OS X and the author has used it on Windows.

The program makes use of a Python library called Python-Prompt-Toolkit that provides the means for auto-complete and syntax highlighting. The Smart Completion uses the Sqlparse library to tokenize the sql statement and uses heuristics to suggest context sensitive completion.

The smart completion is enabled by default and the type of context-sensitive completion it supports would show only table names if you type:



SELECT * FROM users WHERE <tab>

will only show column names.

Ramanujam says his tests have indicated that it can handle nearly 80% of scenarios, but that there are still some cases where it will suggest only keywords when you might be looking for columns or tables. It is, however, possible to turn off the smart completion and switch to Naive completion which suggests words from all categories.


mycli is open source with a BSD 3-clause license. If you encounter bugs or want to assist the project you can do so on GitHub and if you want to fund its continuation there's a Donate page on The site also has Gratipay and Flattr buttons. 

Kickstarter funding has the advantage that you know there's a demand for your product, book or app before you take a financial risk or devote unpaid for time to it. On the other hand if the project goes sour you have the added problem of discharging debts to your backers, see MatchStick Firefox OS Streaming Device To Refund Backers

mycli is a good example of a Kickstarter success story where are realistic amount of funding has enabled a useful tool, that might otherwise never have launched, to become publicly available,

More Information

mycli on GitHub

Related Articles

Wear Your Favourite Cellular Automaton As A Scarf


To be informed about new articles on I Programmer subscribe to the RSS feed, follow us on, Twitter, FacebookGoogle+ or Linkedin,  or sign up for our weekly newsletter.



.NET 8 Released

.NET 8 has been generally released. This is the latest long term support (LTS) version that will be supported for the next three years. Microsoft says the new version delivers improvements to the perf [ ... ]

Step CI - The API Quality Assurance Framework

Power up your API testing inside your CI workflow with Step CI, a free open-source tool that has also introduced a paid Support Plan.

More News





or email your comment to:







Last Updated ( Friday, 07 August 2015 )