Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

create-expo

Package Overview
Dependencies
Maintainers
26
Versions
72
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

create-expo

Create universal Expo apps

  • 0.0.1-canary-20240327-a7302d9
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
2.5K
increased by28.2%
Maintainers
26
Weekly downloads
 
Created
Source

create-expo-app

Create Expo App

The fastest way to create universal React apps

Supports Expo iOS Supports Expo Android Supports Expo Web

the best way to bootstrap a react native app

# Usage for bun, npm, pnpm, and yarn
npx create-expo
bun create expo
pnpm create expo
yarn create expo

# Output help information with all available options
npx create-expo --help

Once you're up and running with Create Expo App, visit this tutorial for more information on building mobile apps with React.

Templates

Create Expo App prepares an empty Expo project by default. You can choose to use a project with more prepared functionality. For that, you can start Create Expo App with the --template flag.

# Pick from Expo's templates
npx create-expo --template

# Pick the expo-template-tabs template
npx create-expo --template tabs

npm templates

Expo publishes all templates through npm packages, versioned by Expo SDK. You can create your own npm templates with npm pack, or by publishing to npm.

# Create from npm
npx create-expo --template tabs # Short for expo-template-tabs
npx create-expo --template expo-template-tabs

# Create from npm using a semver of the template
npx create-expo --template expo-template-blank@50

# Create from local tarball created with `npm pack`
npx create-expo --template ./path/to/template.tgz
Private npm registry

Create Expo App does not support private registries. In order to use a private template, use the local tarball option.

GitHub templates

Besides the templates provided by Expo, you can also create your own or use a 3rd party template directly from GitHub. The --template flag supports GitHub URLs, including branch, tag, or even specific commit.

# Create from repository
npx create-expo --template https://github.com/:owner/:repo

# Create from repository using the `:ref` branch or tag
npx create-expo --template https://github.com/:owner/:repo/tree/:ref

# Create from repository using the `sdk-50` branch, and "templates/expo-template-bare-minimum" subdirectory
npx create-expo --template https://github.com/expo/expo/tree/sdk-50/templates/expo-template-bare-minimum

Placeholders

Create Expo App uses various placeholder values to customize the name of the projects. These placeholders are replaced with their actual value when unpacking the template, and applies to folder names and file contents.

  • Hello App Display Name → The name of the project, without modifications (example Android)
  • HelloWorld → The name of the project with sanitization as described below (example Android, iOS)
  • helloworld → The lower-cased name of the project with sanitization as described below (example Android)

Sanitization

Some characters aren't allowed in certain places, that's why Create Expo App applies sanitization to the project name.

  • Remove all non-word \W and underscore _ characters.
  • Normalize the string using Unicode's normalization form "canonical composition" or NFD.
  • Remove all accent characters u0300-u036f.

Special files

Due to some limitations with npm pack, some files are handled differently.

  • gitignore → Renamed to .gitignore due to npm pack skipping .gitignore files, see npm/npm#1862

Binary files

Placeholder replacements only apply to non-binary files and folder names during unpacking. These extensions are left as-is without any modifications due to possible corrupting binary files.

Keywords

FAQs

Package last updated on 27 Mar 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc