Skip to content

LRiceCooker/react-native-ssr-boilerplate

Repository files navigation

React Native SSR Boilerplate

👋 Welcome to my React Native boilerplate project! This starter kit is a labor of love, inspired by the amazing technologies that have fueled my passion for cross-platform app development. This project is based on next-expo-solito from Tamagui project .

What's Inside?

This project is a synthesis of several fantastic technologies:

  • Tauri: A framework for building desktop apps with web technologies.
  • Tamagui: A tool for creating delightful cross-platform apps.
  • Solito: A monorepo management system for building crossplateform apps (Expo & Next.js).
  • Jotai: Primitive and flexible state management for React
  • Storybook: A tool for developing UI components in isolation.

Prerequisites

Before diving into this project, make sure you've taken a look at the following resources:

Installation and Usage

Tauri (dev)

Usage

This project operates as a monorepo and consists of three main packages:

  1. @my/ui: Handles theming, variants, and more.
  2. @my/app: Manages the various elements of the application.
  3. @my/design: Takes care of components and their documentation using Storybook.

To get started, use the following commands:

  • upgrade:tamagui: Upgrade Tamagui.
  • upgrade:tamagui:canary: Upgrade to the Tamagui Canary version.
  • update:browserlist: Update your browser list.
  • build:types: Build TypeScript definitions.
  • build:desktop: Build the desktop application.
  • run:web: Start the web application.
  • run:web:prod: Run the production web version.
  • run:mobile: Run the mobile application.
  • run:desktop: Run the desktop application.
  • run:storybook: Launch Storybook for component development.

Utils

import { Text as TamaText } from 'tamagui'
import { useLaryVariants } from '@my/ui'

const Foo = () => {
  const Text = useLaryVariants<typeof TamaText>(TamaText); 
  return (
    <Text textBold inSuccess>Hi !</Text>
  )
}

useLaryVariants will overload your tamagui components with Lary props, more documentation here .

Credits

This project wouldn't be possible without the amazing work these talented individuals and communities:

Contribute

As an amator enthusiast, I recognize that this project might not adhere to all the best practices of these frameworks. I wholeheartedly welcome your advice and contributions to make this project even better. 😊

Thank you for checking out my React Native boilerplate, and I hope it inspires your own cross-platform development adventures! 🚀🙌


Disclaimer: This project is a labor of love and may not always follow all the best practices of the technologies it uses. Your feedback and guidance are greatly appreciated! 🙏

About

A cross platform react native starter.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published