gluestack / expo-head-starter-kit

A starter kit with Expo and gluestack-ui for faster, smoother, and universal mobile and web development.
38 stars 15 forks source link

Expo gluestack-ui Head Starter Kit ๐Ÿš€

A comprehensive starter kit to kick-start your next mobile application using Expo and gluestack-ui - your one-stop solution for faster, smoother, and better mobile and web development.

Demo

See the live demo of this starter kit at Demo Link.

๐Ÿ‘ฉโ€๐Ÿ’ป Built with

๐ŸŒŸ Features

๐Ÿ“ท Screenshots

Please find the screenshots in the head-starter-kit-screenshots folder.

๐Ÿš€ Getting Started

Prerequisites

Installation

# Clone the repository

## Using SSH
git clone git@github.com:gluestack/expo-head-starter-kit.git

## Using HTTPS
git clone https://github.com/gluestack/expo-head-starter-kit.git

# Navigate into the directory
cd expo-head-starter-kit

# Install dependencies
npm install

# Start the Expo development server
expo start

๐ŸŒˆ Applying Fonts in your application

You already have the font loaded in your application, now you can apply the font in your application.

Add the font name in the gluestack.config.js file in the fonts object.

fonts: {
  heading: "inter",
  body: "inter",
  mono: "monospace",
},

๐Ÿ“– Documentation

For a deep dive into the components, structure, and configurations, please refer to our detailed documentation.

๐Ÿงช Testing

We've set up Jest as the testing framework for this project to ensure the reliability of your codebase. You can run the tests using the following commands:

Setting Up Jest with Expo

To install jest-expo in your project, run the following command:

npx expo install jest-expo jest

Writing Test Cases

To write your own test cases, refer to the Expo documentation on unit testing for comprehensive guidance and best practices.

Running Tests

To run tests, use the following command:

npm run test

We've added an example of a Jest snapshot test case for the SplashScreen component. This test case uses Jest's jest.mock to mock a dependency and then renders the SplashScreen component within a StyledProvider. Finally, it asserts that the rendered component matches the previously saved snapshot.

You can add more test cases as needed for your other components and features. This section serves as a starting point for incorporating testing into your project using Jest.

๐Ÿ™Œ Contributing

We welcome contributions! Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo, make changes and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

๐Ÿ“„ License

This project is licensed under the MIT License.

โค๏ธ Acknowledgments