Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
Luna is a React Native and Next.js boilerplate so your app can run on Android, iOS and Web concurrently.
Luna is an open-source React Native and Next.js boilerplate that builds one TypeScript codebase into Android, iOS, and web apps concurrently.
Luna combines React Native, React Native Web, and Next.js so a single app can target mobile and web without a monorepo. It was created by LunatiqueCoder and released under the MIT License. The author currently marks the project as obsolete, recommending expo-router as a simpler setup achieving the same goal.
yarn build for production builds and yarn next-start to serve them.yarn create luna-app and an interactive prompt.react-native-cli must be uninstalled.yarn create luna-app, then run yarn start to launch Metro for iOS/Android simulators and yarn web to open the web app at localhost:3000.yarn build and serve it in production mode with yarn next-start to see the Next.js output.Create a new project by running yarn create luna-app, which asks interactive questions. Then use yarn start to run the Metro bundler for native apps (press i or a for iOS or Android), yarn web for web development with hot reload, and yarn build followed by yarn next-start for a production web server.
create-luna-app.Luna is free and open source under the MIT License.
Yes, Luna is released under the MIT License, so you can use it freely for personal and commercial projects.
The author, LunatiqueCoder, states that expo-router with a simpler setup achieves the same result as this template, so they recommend new projects use expo-router instead of Luna.
yarn start starts Metro for native apps; yarn web runs the web app in development; yarn build creates a production Next.js build; and yarn next-start serves that build in production mode.
No, Luna deliberately keeps everything in a single app, avoiding a monorepo structure.
When running yarn web, the app is served at http://localhost:3000 in your browser.
