Proposal: Nouns Android app 🤖

Hey friends!

The Nouns Collective is excited to share a draft of the Nouns Android app proposal. As always, we’d love your feedback.

Check out the doc: Nouns: Explore, Create & Play on Android

I’ve also added the text from the doc below. We’re looking forward to hearing your thoughts and suggestions!

Finally, just want to take a moment to thank this community for all the amazing support and kind words we’ve received for the Nouns iOS app. It makes us very happy to know that people are using it every day and loving the experience. Thank you! :partying_face:


Nouns Collective proposal #3

Nouns: Explore, Create & Play on Android

[draft - please share your feedback]

tl;dr

Building on the momentum of the Nouns app for iOS, we are proposing to build an Android version of the app to bring Nouns to an even wider audience. Our goal is to create an app experience that as a minimum reaches parity with the iOS app. More importantly, we would like to explore and leverage the more open Android ecosystem to enable more powerful crypto functionality like connecting wallets to bid, buy and vote on various Nouns. Overall, we want the two apps to serve as a foundation on which developers can build features quickly and consistently across both platforms.

Android App

The Android app will support all the great features that were built into the iOS app:

  • Receive rich push notifications at Noun o’clock
  • Browse all on-chain Nouns along with their bid history and proposal activity
  • View proposals that have been submitted to the Nouns DAO
  • Create custom (off-chain) Nouns that can be shared on social media and used as a pfp or watch face
  • Play with your custom Nouns, make them talk and repeat things, experiment with various voice changing effects
  • Share video clips of talking Nouns across social platforms
  • Add a widget to the home screen showing the Noun of the day

What’s new?

Given that Android is generally more open as a platform, we plan to explore ways for users to connect their wallet and interact with on-chain contracts. Our intention is to look for unique experiences that combine traditional mobile engagement such as rewards and storing these on-chain.

  • Explore ways for users to connect their crypto wallet to the app
  • Explore ways for wallet-connected users to receive tokens from the app that would be stored on-chain
  • Explore feature gating (i.e. token gating) using in-app currency that would be stored on-chain

Technical Considerations + Source code

  • App will be built using Kotlin + Kotlin Native (used by Netflix, Shopify and GoPro) and will fetch data using The Graph API
  • As part of developing the Android app, we would like to invest some time unifying parts of the iOS and Android codebases using Kotlin Native. This will increase code reuse between the two projects and will speed up the development of both apps in the future
  • Target operating system will be Android 12 and above
  • All code and assets will be open sourced. Our goal is to encourage others in the community to use these as inspiration for building more great Nounish things

Design

The product’s design aesthetic will follow the same system / guidelines / flavor that were used to build the Nouns iOS app. However, some work will need to be done to adapt those iOS-centric designs to feel native on Android. We will also be designing new exploratory functions like connecting wallets, displaying on-chain user data, etc.

  • Update visual designs so that the overall UX and look-and-feel follow contemporary Android patterns and UI systems
  • Share Figma file with the Nouns community to allow for comments and feedback
  • Design high-fidelity mockups that detail the functional aspects of user flows
  • In the spirit of open source, we will involve the Nouns community to participate and influence the app’s development in a number of key ways:
    • Open source the code via GitHub so that other developers can fork and contribute to the project
    • Provide regular updates on design and development via Discord
    • Start a public beta of the app for the Nouns community to participate in via the Play Console

Nouns iOS :heart:

The Nouns iOS app was launched on May 16, 2022 to some amazingly positive feedback. We hope to garner the same response on Android and bring Nouns to even more users.






iOS Screenshots

The design aesthetic that we established with the iOS app will carry over to Android. Our intention is to create a custom Android app that feels native to that platform.

Timeline

Concept, design and development is scoped to X months. [TBD - still working on the schedule]

Co-creation and beta testing

We love to build in public and plan to work closely with the Nouns community, through co-creation workshops and regular feedback loops via Discord. We will be running a beta test of the Android app to identify bugs early and other deficiencies with the aim of increasing build quality and level of polish before launch.

Team

The Nouns Collective is a liquid super team made up of friends building playful, useful and beautiful products with the crypto communities they love.

We’re excited as ever to continue to dedicate our creative energies towards Nouns (our fav NFT project). Inspired by the Nouns DAO origin story, we assembled a dream team of experts to bring the Nouns mobile apps vision to life. Our goal is to make Nouns the best NFT app on every platform.

Introducing the Nouns Collective team:

Rainman, the project lead, is an experienced founder and product leader. He has over 10 years of experience building world-class consumer apps. He’s the founder of an award-winning app studio that was acquired in 2016. There he launched several highly regarded apps including top-ranked iOS and Apple Watch apps featured in an Apple commercial and ranked #1 in Health, another that ranked #1 in Utilities, another that ranked #1 in Education and another that ranked both #1 in Utilities and #2 overall. These apps have been downloaded by millions of people and have appeared in the New York Times and Wired Magazine.

Krish is a technical lead with over 15 years of experience building software products for humans. He’s the founder of a boutique dev agency that was acquired in 2020. His passion for product development is based on the belief that technology can be a driving force for positive change in the world. Career highlights include professional work in games, social media, ecommerce and fintech with companies like Shopify, Zynga, Bitmoji, Kobo and Questrade.

Shawn is a multidisciplinary designer with more than 14 years experience in user experience, research, and interface design. He’s built products for the NFL, Twitter, Humana, Deloitte; ran product at an AI startup; and worked on smaller e-commerce, fintech and crypto products. Shawn also has a background in computer animation, graphic design, and strategic foresight.

​​Matt is a multidisciplinary researcher and designer with over a decade of experience in the field of product design. He specializes in human centered design, systems thinking, and various approaches to using design thinking and other frameworks/methods to solve complex problems for his clients. With a background in Industrial Design, Matt has built extensive expertise in digital design and customer research, using these skills to build digital products for clients like Google, Facebook, Autodesk, as well as a number of smaller crypto, fintech, and proptech startups.

Ziad is a Senior/Lead Mobile Software Engineer with a master’s degree in computer science, nearly 12 years of experience in end-to-end software development life cycle from architecture design, development, testing, and support. Ziad has built the most popular water tracker mobile app, Water Minder. He’s worked on complex problems like integrating cross-platform features of the eBike system at Robert Bosch to turn the bike into a cutting-edge smart bike, built Android & iOS apps for various clients such as Edyn, School Event Pay, whitetruffle, Park Place, and Parachute.

Arslan is a former Lawyer and current Product Manager who sweats the details and is obsessed with user pain points/needs. He has extensive experience organizing and leading complex, multifaceted projects through his legal work and startup which he operated prior to his law career. Arslan has been a passionate crypto enthusiast since 2017 and has participated within the space in a multitude of ways ranging from ICOs to strategic planning.

Alex is a mobile developer with over 4 years of experience building software applications. His professional career began with building full-stack web apps and cross-platform mobile apps for a small consultancy. More recently, he’s been working at Shopify as a mobile developer with a heavy focus on Kotlin Native. He has a degree in mechanical engineering with a minor in computer science and spent multiple internships working in the automotive industry. His diverse experience has given him an appreciation and unique insight into the tech industry.

Compensation

We ask that the Nouns DAO fund the design & development of this project. We also ask that they fund the maintenance and updating of the app for a period of 1 year. All code and designs will be open sourced and published on GitHub.

  • 175 ETH for design, dev, promotion and deployment of the Nouns Android app
  • 15 ETH for 1 year of maintenance and up to 4 app updates including bug fixes and feature enhancements as well as an update to support new Android versions.
  • Payment to be made to the Nouns Collective multisig

We :black_heart: the Nouns

Our unstated goal with every proposal is not just to proliferate Nounish memes but also to eventually become Nouns holders ourselves. Our long-term vision is to bring more builders into this community and to work with the DAO in a more foundational way. ⌐◨-◨

1 Like

This is a no-brainer to support but 2 things:

What if you first launched an android-ux-native copy of the ios app?

Then explored any on-chain/wallet features later.

I would split it up into 2 proposals, think that would be easier for the community to pass.

Do you need the eth to compensate the team? If not, i think you should consider asking for a noun or two as payment instead.

Good questions:

What if you first launched an android-ux-native copy of the ios app? Then explored any on-chain/wallet features later. I would split it up into 2 proposals, think that would be easier for the community to pass.

Part of the reason to combine the two pieces of work is to continue to push the boundaries of crypto on mobile. Just like we did with the iOS app, we want to make a splash on Android as well. This is the stuff that excites our team and that we look forward to in a project.

Do you need the eth to compensate the team? If not, i think you should consider asking for a noun or two as payment instead.

Heh, that would be cool. Let me take it back and discuss with the team. I suspect at least a few people would expect to be compensated in ETH. Perhaps a split might make sense.

1 Like

What’s new?
Given that Android is generally more open as a platform, we plan to explore ways for users to connect their wallet and interact with on-chain contracts. Our intention is to look for unique experiences that combine traditional mobile engagement such as rewards and storing these on-chain.

  • Explore ways for users to connect their crypto wallet to the app
  • Explore ways for wallet-connected users to receive tokens from the app that would be stored on-chain
  • Explore feature gating (i.e. token gating) using in-app currency that would be stored on-chain

If this is the part that excites the team (understandable!), and essentially the ulterior goal of the prop, I think it must be fleshed out in way more detail and be the centerpiece of the prop.

Frankly, there are a lot of uncertainties/open questions around those bullet ideas:

  • Explore ways for users to connect their crypto wallet to the app

What’s new/interesting about this? Especially in the context of nouns?

  • Explore ways for wallet-connected users to receive tokens from the app that would be stored on-chain

This is an entire prop baked into a bullet point and scares me a bit tbh.

  • Explore feature gating (i.e. token gating) using in-app currency that would be stored on-chain

What are we gating, and why? (Speaking from experience, token-gating is such an obvious use case of NFTs that it’s often used without deep thought and consideration to the overall UX.)

No brainer support given the success of the iOS app.

Beyond the excitement of bringing the app to a new base, I love the potential integrations given the openness of the Android platform.

My only feedback would be to make sure the “what’s new” is somewhat clear before going on-chain. As @krel mentioned, this is likely to be the centerpiece of the prop (I know it is for me). Maybe having the community go back and forth on what is worth pursuing may be a good idea if the team is not entirely sure. That said, I dread “design by consensus” so if the team feels otherwise, all for it as well.

2 Likes

Agree with Seneca that design by consensus is worse, but maybe there’s an initial exploration phase attached to this prop where you figure out what you want to do via conversations with nouners? Im just skeptical to doing “crypto stuff” without a plan, especially if that’s not your forte.

Alternatively, you might’ve built up so much trust capital via the iOS app that the community is willing to write you a “blank check”? That could certainly be true but my gut says nouners will require more to be convinced.

Ultimately:

  • (Not an Android user but) Id love an Android version, please build!
  • Id love for you to explore crypto-centric integrations, as long as there is a plan attached
1 Like

Thanks for the feedback. I’ll add some more details to that section to give you a better sense of what we’re thinking.

One thing to mention is we’re looking at it both from the perspective of Nouners and normies :blush:. Ultimately we don’t see the Nouns app as a Nouner admin tool as that would limit its users to people who own Nouns. So we’re trying to find ways of bringing new folks into the app and onboard them into crypto in a natural way. But also add some new experiences for people with Nouns, e.g. voting on proposals for example, which we’ve had some people ask for.

can you comment a little more on the 175 ETH cost? would you be able to port much of the work you did on the iOS app to the android app?

Got it, thanks! What type of ideas has popped up in conversations already?

What type of ideas has popped up in conversations already?

Several governance features:

  • Bid on a Noun
  • Vote on proposals
  • Delegate voting

But also some community-focused ones like minting a created Noun and integrating FOMO Nouns.

2 Likes

I don’t want to be a bad guy here but 175 eth is a bit overpriced. I think 50 eth for an android app is a market price especially since many features and design already have been implemented in iOS.

again, I don’t want to be a bad guy here

Wow!!! The asked fund for this proposal is 2 ETH :slight_smile:

Hi fren!

Excellent observations!

From Stephen Few,

“A dashboard is a visual display of the most important information needed to achieve one or more objectives; consolidated and arranged on a single screen so the information can be monitored at a glance.”

Dashboards are a powerful way to get data-based intelligence using data visualization that show relevant, actionable data and track stats and key performance indicators (KPIs).

So the main idea here is to provide insights to the nouns community as well as visual information which can be used in many ways like marketing for example.

Initially, I intend to build a basic app that shows Nouns and Lil Nouns data visualization using basic but important data.

The features for this app initial version are:

  • A graphic view of generated data visualization.

  • A procedure that permits connecting a wallet account.

  • A procedure that permits exporting the used data as a csv file.

  • A procedure that permits exporting the graphic as an image file.

  • A procedure that permits selecting the data source (Nouns and Lil Nouns initially).

  • A procedure that permits selecting the date range (m, d, w, y)

The development will be built as following:

  • A modular structure that permits the implementation of new nounish projects.

  • A cross-platform technology to easily deploy the app to other platforms like IOs for example.

  • The use of Python in data processing.

  • The use of Nouns API to keep the integration between the projects.

  • CC0 terms.

  • A public repo with total permission to the nouns founders or those the NounsDAO and LilNounsDAO choose to follow the development.

  • Use of Agile and Clean-Code methodologies.

  • Frequent reports and meetings with the nouns responsible for the project supervisioning

Obs1: The Agile methodology implicates flexibility so the app can be modified as the suggestions and considerations may happen.

Obs3: The english language grammar, nouns expressions, nouns colors,nouns fonts, etc are resources provided by the nouns responsible for the project supervisioning.

Obs2: The app publishing in the Play Store or any other platform will be done just after the NounsDAO and LilNounsDAO approvals.

This is a basic mock-up drawn by me (sorry for my poor drawing skills rsrs)

Wow!!! Wrong Place!!! Trying to delete it!!! Sorry!!!

You need to be a member for longer to edit/delete I believe.
I was wondering… because this looks like an answer to my question on your post.
Thank you for the detailed response nonetheless.

1 Like

Hey noun22. We built the iOS app in Swift and SwiftUI, and we’ll be building the Android app using Kotlin and Kotlin Native. As part of this proposal, we are allocating time to unify parts of the codebase which will make future development on both platforms easier, faster and cheaper. The area where we can leverage most of what we did on iOS is on the UI / UX side. We still need to modify the designs to follow Android patterns, but the engineering side is where most of the complexity is.

We believe the team effort will be close to what was required for the iOS app, which is why we’re asking for just under what we asked for on proposal 6 (adjusted for the value of ETH).

I’ve updated this section in the attached doc. Would love to get feedback on these.

What’s new?

Given that Android is generally more open as a platform, we plan to explore ways for users to connect their wallet and interact with on-chain contracts. Here are some ways we’re thinking about pushing the app forward. We’re looking for feedback on these ideas:

  • Connect a crypto wallet to the app
  • Perform governance activities such as bidding on and settling a Noun, voting on proposals and delegating votes
  • Mint created Nouns as NFTs
  • Store off-chain Noun creations in the user’s crypto wallet
    • We would like to use the user’s wallet for storing user-generated content so that they can take it with them (i.e. no centralized server)

hey, thanks for getting back to me. i have spoken to several dao members about this proposal and i’ll summarize their feedback for you here

feedback i have received from DAO members is that we paid substantially over market for the iOS app - and i don’t really have a problem with that, given the quality of the team and their early dedication to the Nouns project

but i think paying a similar price for a port is kinda stretching it, especially given the comments of this anon:

i would be excited to have a port to android that doesnt involve re-engineering the entire app and adding all those new android-native features

one DAO member also mentioned to me that Prop 6 was to deliver an open source iOS app - which to my knowledge has not yet been delivered - and he strongly feels that we should get the chance to review your code/work before their next prop

2 Likes

Since it’s been brought up a couple times, just want to say that we are focussed on open sourcing the iOS app. We’re planning to hold a session for developers once it’s available, which should be in the next week or so. More details to follow.

hi all,

how have you identified a cost for this proposal without knowing how many months it will take? this is a bit concerning as while the iOS app is really great, timeline is the one area where the team missed the mark (~8 months vs. 4 months estimated)

what was the thought process around not using kotlin initially with iOS app?

I also agree with 22 that it feels pricey and we should have a further breakdown of costs or roles with 7 team members. design being the biggest area of opportunity to leverage from iOS efforts. you mentioned “exploring” some new features, but a more firm feature list is needed to accurately build timeline, cost, and so the dao can be confident in what will be delivered.

looking forward to seeing the open sourced iOS app!