GithubHelp home page GithubHelp logo

Support app descriptions about meta HOT 12 OPEN

lberrymage avatar lberrymage commented on August 28, 2024 1
Support app descriptions

from meta.

Comments (12)

lberrymage avatar lberrymage commented on August 28, 2024 6

Short descriptions are now merged into main and slated for next week's release.

from meta.

lberrymage avatar lberrymage commented on August 28, 2024 4

Developers should be able to submit descriptions along with their app. These descriptions should follow a (potentially versioned) well-defined format in the unsigned repository metadata; HTML formatting will not be supported. For the initial implementation, developers should be able to submit a description for one of their existing apps including a short (~80 char max) description along with a significantly longer long description which can be sectioned into paragraphs.

from meta.

lberrymage avatar lberrymage commented on August 28, 2024 3

Rendering from the AST ourselves also presents another advantage: we can explicitly choose what to support rendering. For example, if we don't want to support images in the description, we can choose not to render them, or if we only want to allow two levels of headings instead of six, we can do that.

Limiting the format in this way ensures a degree of consistency across the board which makes descriptions both more aesthetically pleasing and, in my opinion, more useful since users can hold consistent expectations for what an app description includes.

from meta.

keunes avatar keunes commented on August 28, 2024 3

What do you mean? Developers will upload/update descriptions through the developer console (or eventually its API), so I'm not sure what could be re-used per se.

For AntennaPod, Triple-T is used to manage the metadata. F-Droid understands & respects the file structure: https://f-droid.org/en/docs/All_About_Descriptions_Graphics_and_Screenshots/#triple-t-structure

I guess what I had in mind is some uploader tool for Accrescent that leverages this file structure as well (or maybe even get support for release management in Fastlane for Accrescent).

wonder if Play Store has any guidelines for how developers should ideally write app descriptions? That'd be nice to see.

Here's what I could find:

from meta.

matchboxbananasynergy avatar matchboxbananasynergy commented on August 28, 2024 2

A few thoughts on this:

All apps should submit both a short and longer description.

Descriptions should not include:

  • Images - Those should be their own section, either above or below the description.
  • Links - There should be a dedicated links sections below the description. Developers should be able to choose from a dropdown of predefined link "types" (Website, Docs, Donate, Source Code etc.) and then put the link. Those sources should be automatically sorted by Accrescent regardless of the order that the developer submits them in to ensure consistency, and reviewers should check that there are no links in the description, and that the link labels actually make sense (i.e. the link for docs actually goes to docs)

We should have guidelines for how the descriptions should be structured to ensure that they are as uniform across different apps as possible. I wonder if Play Store has any guidelines for how developers should ideally write app descriptions? That'd be nice to see.

from meta.

lberrymage avatar lberrymage commented on August 28, 2024 1

Implementation has begun at https://github.com/accrescent/parcelo/tree/descriptions.

from meta.

PatrykMis avatar PatrykMis commented on August 28, 2024

If there will be website for listing/searching Accrescent apps too, the HTML format should be supported, so I think markdown format would be good as it supports paragraphs, lists, headings and eventually tables or images.

from meta.

lberrymage avatar lberrymage commented on August 28, 2024

Something like markdown would be ideal. The reason I call out HTML is mostly for rendering purposes. I'd rather not render untrusted HTML via WebView just for the app description. Sanitizing that for script injection etc. is another opportunity for error that I don't think is necessary for a feature this simple.

The source format doesn't matter as much for the website since the pages will need to be generated from the metadata anyway, although markdown may make that easier.

Looking into it more, I think we could use commonmark-java to create an AST, and instead of rendering it to HTML, pass it to Compose to generate a composable tree as described in this article. I really like that idea initially.

from meta.

keunes avatar keunes commented on August 28, 2024

In terms of where to source the descriptions from, it would be great if existing structures/folder locations used already by Google Play and/or F-Droid could be re-used, as to limit the effort for existing apps.

from meta.

lberrymage avatar lberrymage commented on August 28, 2024

What do you mean? Developers will upload/update descriptions through the developer console (or eventually its API), so I'm not sure what could be re-used per se.

from meta.

salim-b avatar salim-b commented on August 28, 2024

Just a hint: You might wanna take inspiration from the AppStream standard from the Linux Desktop world. Docs are here.

I'm no Android developer, but I guess it could be beneficial in the long term to at least come up with something easily convertible to/from AppStream metadata (and not reinvent the wheel, as the saying goes ☺️).

from meta.

lberrymage avatar lberrymage commented on August 28, 2024

I'm deprioritizing long descriptions for a little while to prioritize infrastructure and scaling improvements, while are now reflected in the roadmap.

from meta.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.