Supposing your app is nice and could be some day a popular one, I recommend the followings:
Choose a nice name and description
Choose a name which has not been taken by anyone else before. The shorter it is, easier to remember. Also, it should describe somehow what your app does. Same goes for description: short, good, easy to remember and describe what the project does.
Write a nice README file
The user saw your project somewhere and the name was interesting for him/her.
Now, the next thing the user sees is the readme file. Write a good README.your_favorite_markup (e.g. README.md, for markdown).
From my experience I saw that making a nice heading image attracts the people.
Typpy -- nothing new: just a tiny library to get the type of a value in JavaScript. In this moment it has 10 stars on GitHub. That means that people liked it.

Create your own documentation format to write apps
I recently wrote an article on my blog about how to increase the productivity by using Blah -- a tool I have written. Blah generates documentation based on templates and project files.
Make the contributing steps clear
Here, Blah helps you again. You can write your user-level template for CONTRIBUTING.md
and using blah -c
you generate the CONTRIBUTING.md
file.
Tell the world what you did
Share your work on websites like Twitter, Hacker News, Reddit etc. It really helps. Got retweeted by a bot? Cool. Don't worry. Real persons will find your tweet anyway.
These are some tips I observed developing projects and publishing them on GitHub. These tips are not primary-focused on the project quality but on how people will see it.
Sure, if you want to get popular, build something great. Something that didn't exist before. Build tools you need. Do you need an artificial intelligence to do some stuff? Cool. Probably others need that too. Do it. Publish it. Share it.
You will get stars, you will get issues, pull requests, contributions!