Giter Club home page Giter Club logo

cdkit.appstore.design's Introduction

CDKit: App Stores Design Automation

Latest Release Build Status

Quality Gate Status Security Rating Maintainability Rating

Bugs Code Smells Coverage Duplicated Lines (%)

CDKit is a DevOps framework that helps to deploy mobile apps (iOS and Android) to the app stores (iTunes and Google Play).

This tool create the App Store and Google Play screenshots with different themes and devices and it includes:

  • iOS and Android screenshots
  • Support for phones and tablets formats
  • Support for child themes
  • A HTML preview for all the screenshots generated with a magnifier!
  • Easy integration on CI/CD pipelines

App Stores Design Automation

Quick video

CDKit Design Automation demo

Getting started

Configure your screens

  1. Create a folder with your app bundle ID (ex. com.company.app):
mkdir app/com.company.app
  1. Create a screens.json (see template below) and add configure each title, subtitle and source filename.

Example of a /app/{bundle ID}/screens.json

[{
    "title": "Pipelines list",
    "subtitle": "Take care of your pipelines.",
    "screenshot": "pipelineList.png"
  },
  {
    "title": "Pipeline history",
    "subtitle": "Get the history of your pipelines.",
    "screenshot": "pipelineHistoryList.png"
  },
  {
    "title": "Console",
    "subtitle": "See why your build failed.",
    "screenshot": "consoleLog.png"
  },
  {
    "title": "Agents list",
    "subtitle": "Take a look at your Go Agents.",
    "screenshot": "agentList.png"
  },
  {
    "title": "Agents details",
    "subtitle": "Go Agent details and last jobs.",
    "screenshot": "agentDetails.png"
  },
  {
    "title": "Environments",
    "subtitle": "Pipelines, agents and variables.",
    "screenshot": "environmentDetails.png"
  },
  {
    "title": "Settings",
    "subtitle": "Configure the way you use the app.",
    "screenshot": "settings.png"
  },
  {
    "title": "Login",
    "subtitle": "Login to your GO.CD server.",
    "screenshot": "login.png"
  }
]

Create a child theme

It's optional, but probably the default colors of the theme will not be the same as your design :)

You can create a child theme based on a theme to customize the colors, font and more!

See the Themes section to create your child theme.

Run the CLI

node src/cli.js --app {bundle ID} --platform {android|ios} --screenshots {path to your device screenshots}

Example:

node src/cli.js --app com.company.app --platform ios --screenshots ~/screenshots

Themes

List of themes

For this early version, there is only one theme: default.

Default

This theme allow you to customize:

  • device mockup (all available)
  • font file
  • background color
  • title color
  • title font size
  • subtitle color
  • subtitle font size

Create a child theme for your app

You can overwrite a theme for an app by changing the default values (font name, colors, background color, etc.).

To do that, you need to look at the theme configuration (theme.json under the folder /src/layouts/themes/{theme name}/) and add the value(s) that you want to customize.

Your theme will overwrite the defaults values of the theme that your app is using.

Example of a /app/{bundle ID}/theme.json

{
  "theme": "default",
  "backgroundColor": "#86569A",
  "font": "HelveticaNeueLight.ttf",
  "title": {
    "color": "#FFFFFF"
  },
  "subtitle": {
    "color": "#C2AACC"
  }
}

Device mockups

Available

iOS

Android

TODO

  • Add multi-languages support
  • Add more recent devices
  • Create more themes
  • Generate the HTML preview instead of using a static HTML file (needed for multi-languages support)
  • Extend the CLI with a wizard to create a new app (bundleID, theme to use, number of screenshots, etc.)

cdkit.appstore.design's People

Contributors

dependabot[bot] avatar renovate-bot avatar renovate[bot] avatar semantic-release-bot avatar snyk-bot avatar timoa avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

cdkit.appstore.design's Issues

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Repository problems

These problems occurred while renovating this repository. View logs.

  • WARN: Found renovate config warnings

Pending Approval

These branches will be created by Renovate only once you click their checkbox below.

  • chore(deps): update actions/checkout action to v4
  • chore(deps): update actions/setup-node action to v4
  • chore(deps): update cycjimmy/semantic-release-action action to v4
  • chore(deps): update dependency chai to v5
  • chore(deps): update dependency espree to v10
  • chore(deps): update dependency node to v20
  • chore(deps): update dependency popper.js to v2
  • chore(deps): update github artifact actions to v4 (major) (actions/download-artifact, actions/upload-artifact)
  • chore(deps): update github/codeql-action action to v3
  • chore(deps): update linters (major) (eslint, eslint-config-airbnb, eslint-config-prettier)
  • fix(deps): update dependency figures to v6
  • fix(deps): update dependency yargs to v17
  • ๐Ÿ” Create all pending approval PRs at once ๐Ÿ”

Awaiting Schedule

These updates are awaiting their schedule. Click on a checkbox to get an update now.

  • chore(deps): lock file maintenance

Pending Status Checks

These updates await pending status checks. To force their creation now, click the checkbox below.

  • chore(deps): update github/codeql-action action to v2.25.5

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

github-actions
.github/workflows/code-review.yml
  • step-security/harden-runner 9ff9d14760a73102d9fa2f47131624137f50ead8
  • actions/checkout v3.6.0@f43a0e5ff2bd294095638e18286ca9a3d1956744
  • reviewdog/action-eslint v1.24.0@423672b7acbb75ee34d3e37aff30949ddc8350e3
.github/workflows/codeql-analysis.yml
  • step-security/harden-runner 9ff9d14760a73102d9fa2f47131624137f50ead8
  • actions/checkout v3.6.0@f43a0e5ff2bd294095638e18286ca9a3d1956744
  • github/codeql-action v2.25.3@ceaec5c11a131e0d282ff3b6f095917d234caace
  • github/codeql-action v2.25.3@ceaec5c11a131e0d282ff3b6f095917d234caace
  • github/codeql-action v2.25.3@ceaec5c11a131e0d282ff3b6f095917d234caace
.github/workflows/nodejs.yml
  • step-security/harden-runner 9ff9d14760a73102d9fa2f47131624137f50ead8
  • actions/checkout v3.6.0@f43a0e5ff2bd294095638e18286ca9a3d1956744
  • actions/setup-node v3.8.2@1a4442cacd436585916779262731d5b162bc6ec7
  • actions/upload-artifact v3.1.3@a8a3f3ad30e3422c9c7b888a15615d19a852ae32
  • step-security/harden-runner 9ff9d14760a73102d9fa2f47131624137f50ead8
  • actions/checkout v3.6.0@f43a0e5ff2bd294095638e18286ca9a3d1956744
  • actions/download-artifact v3.0.2@9bc31d5ccc31df68ecc42ccf4149144866c47d8a
  • sonarsource/sonarcloud-github-action master
  • step-security/harden-runner 9ff9d14760a73102d9fa2f47131624137f50ead8
  • actions/checkout v3.6.0@f43a0e5ff2bd294095638e18286ca9a3d1956744
  • ShiftLeftSecurity/scan-action master
  • actions/upload-artifact v3.1.3@a8a3f3ad30e3422c9c7b888a15615d19a852ae32
  • step-security/harden-runner 9ff9d14760a73102d9fa2f47131624137f50ead8
  • actions/checkout v3.6.0@f43a0e5ff2bd294095638e18286ca9a3d1956744
  • cycjimmy/semantic-release-action v3.4.2@8e58d20d0f6c8773181f43eb74d6a05e3099571d
  • step-security/harden-runner 9ff9d14760a73102d9fa2f47131624137f50ead8
  • actions/checkout v3.6.0@f43a0e5ff2bd294095638e18286ca9a3d1956744
  • actions/setup-node v3.8.2@1a4442cacd436585916779262731d5b162bc6ec7
html
src/tools/preview/android.html
  • popper.js 1.16.1@sha512-ubuT8Z88WxezgSqf3RLuNi5lmjstiJcyezx34yIU2gAHonIi27Na7atqzUZCOoY4CExaoFumzOsFQ2Ch+I/HCw==
src/tools/preview/ios.html
  • popper.js 1.16.1@sha512-ubuT8Z88WxezgSqf3RLuNi5lmjstiJcyezx34yIU2gAHonIi27Na7atqzUZCOoY4CExaoFumzOsFQ2Ch+I/HCw==
npm
package.json
  • colors 1.4.0
  • figures 2.0.0
  • gm 1.25.0
  • lodash 4.17.21
  • yargs 16.2.0
  • acorn 8.11.3
  • acorn-jsx 5.3.2
  • chai 4.4.1
  • eslint 5.16.0
  • eslint-config-airbnb 17.1.1
  • eslint-config-prettier 4.3.0
  • eslint-plugin-import 2.29.1
  • eslint-plugin-jsx-a11y 6.8.0
  • eslint-plugin-react 7.34.1
  • espree 9.6.1
  • mocha 10.4.0
  • npm-run-all 4.1.5
  • nyc 15.1.0
  • node >=16.0
  • npm >=8.6.0
nvm
.nvmrc
  • node 16

  • Check this box to trigger a request for Renovate to run again on this repository

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.