Skip to content

Files

Latest commit

1c1319f · Sep 5, 2024

History

History
This branch is 103 commits behind android/compose-samples:main.

Jetsnack

Jetsnack sample

Jetsnack is a sample snack ordering app built with Jetpack Compose.

To try out this sample app, use the latest stable version of Android Studio. You can clone this repository or import the project from Android Studio following the steps here.

This sample showcases:

  • How to implement a custom design system
  • Custom layout
  • Animation

Screenshots

Status: 🚧 In progress 🚧

Jetsnack is still under development and some screens are not yet implemented.

Features

Custom Design System

Jetsnack's major feature is demonstrating how to implement a custom design system. Jetsnack has a bespoke color system and does not use Material color theming.

This is implemented by:

Jetsnack wraps Material components, customizing them to use its color system. See the components package e.g. JetsnackButton. Jetsnack makes heavy use of gradients, see Gradient for a number of helpful Modifiers.

Custom Layout

Jetsnack utilizes custom Layouts to achieve its design. See:

Data

Domain types are modelled in the model package, each containing static sample data exposed using fake Repos objects.

Imagery is sourced from Unsplash and loaded using the Coil library.

Baseline Profiles

For Baseline profiles, see the compose-latest branch.

License

Copyright 2020 The Android Open Source Project

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.