Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
Archived starter template for building cross-platform React apps with the GREEN stack: GraphQL, React Native, Electron, Expo, and Next.js.
The Aetherspace GREEN stack starter template is an archived monorepo boilerplate for building cross-platform React apps from a single JavaScript and React codebase, with separate entry points for Next.js (web) and Expo (iOS and Android). Created by Thorr (codinsonn.dev), it packages the GREEN stack — GraphQL, React Native and React Native Web, Electron, Expo, and Next.js — into a yarn-workspaces monorepo. The repository is explicitly marked as unsupported and no longer receives updates; the README points to the feature-complete Aetherspace/green-stack-starter for a maintained version.
The GREEN stack starter template is a legacy, archived version of the Aetherspace full-stack cross-platform app boilerplate. It takes a single React codebase and produces builds for web, PWA, static export, SSR, iOS, Android, Mac, Linux, Windows, REST, and GraphQL. It achieves this through a yarn-workspaces monorepo that separates each app into three folders: a shared apps/app workspace for screens and components, an apps/app-expo workspace with Expo and Metro config, and an apps/app-next workspace with Next.js config for pages and API routes. The template was bootstrapped from the GREEN stack starter and is unsupported; the repo itself links to the newer Aetherspace version for continued development.
apps/* and packages/* workspaces isolate Expo and Next.js configs (babel, metro, webpack, tsconfig), reducing breakage when updating shared dependencies.graphql/ and resolvers/ folders; the Next.js workspace has a pages/api/graphql.ts route that serves the GraphQL client.babel.config.js for both Expo and Next.js, metro.config.js for React Native bundling, webpack.config.js for Expo PWA browser testing, and TypeScript configs per workspace.expo-next-react-navigation for cross-platform navigation, tailwind-rn for responsive styling, moti and react-native-reanimated for animation, react-native-svg for icons, and Expo's AuthSession for authentication.yarn deploy pushes to Vercel, and a Netlify guide is linked; both live demo URLs appear in the README.yarn dev-desktop command is still a work in progress.yarn install, then yarn dev-web for the Next.js web app and yarn dev-mobile for the Expo app, and start editing shared screens in the app workspace.resolvers/ folder and expose them through the Next.js API route, so the mobile and web apps consume the same endpoint.The template uses yarn workspaces to keep platform configs isolated. Each project has an app-name workspace with no dependencies, an app-name-expo workspace that owns Expo-related dependencies and Metro/babel config, and an app-name-next workspace that lists only Next.js dependencies and configs. Code sharing happens through the screens/ and components/ folders in the base app workspace, which both entry points import.
The README credits two Expo + Next.js monorepo examples as inspirations: axeldelafosse/expo-next-monorepo-example and nandorojo/expo-next-monorepo. It also points to the official byCedric/eas-monorepo-example for Expo-only monorepos and Next.js's own with-react-native-web and with-expo examples for non-monorepo setups.
No. The repository is archived and explicitly marked as unsupported; it will not receive updates. The README directs users to the feature-complete Aetherspace/green-stack-starter for a maintained version.
GREEN is an acronym for the five core technologies in the stack: GraphQL for typed APIs, React Native and React Native Web for cross-platform UI, Electron for desktop features, Expo for mobile development and testing, and Next.js for SEO, SSR, static exports, and API routes.
After cloning, run yarn install, then yarn dev-web to start the Next.js web app or yarn dev-mobile to launch the Expo mobile app. A yarn dev-desktop command exists for Electron but is listed as a work in progress.
The README lists several cases: projects that are web-only (use Next.js), mobile-only (use Expo), desktop-only (use Electron with React, Vue, or Svelte), heavy Bluetooth/AR/VR (go native with Swift or Java), console games (use Unity), non-React projects (use Svelte or Vue with Ionic), or projects with no SSR/SEO needs (use Expo alone).
Tailwind is not pre-installed, but the README recommends tailwind-rn as the styling solution for responsive web and mobile styling. It is listed under optional packages to add.
