Skip to content

metaideas/init

Folders and files

NameName
Last commit message
Last commit date

Latest commit

c616874 Â· Mar 24, 2025
Mar 19, 2025
Mar 5, 2025
Feb 13, 2025
Feb 12, 2025
Mar 24, 2025
Feb 24, 2025
Mar 24, 2025
Mar 19, 2025
Mar 21, 2025
Mar 19, 2025
Mar 19, 2025
Jan 15, 2025
Mar 13, 2025
Mar 15, 2025
Dec 13, 2024
Dec 19, 2024
Mar 5, 2025
Mar 19, 2025
Mar 19, 2025
Mar 24, 2025
Mar 24, 2025
Mar 18, 2025

Repository files navigation

🧬 init

Start once, ship everything.

An opinionated monorepo starter kit for building apps everywhere: web, mobile, desktop, and more.

What's included

Prerequisites

  • We use pnpm as our package manager.
  • You'll need Nodejs v22 or higher installed.
  • You'll need Docker installed for running the database and Redis. I recommend using OrbStack for managing your containers.

Getting started

  1. Install the dependencies using pnpm:
pnpm install
  1. Start your local services using docker.
pnpm docker:up
  1. Run the setup-env script to create the environment files:
pnpm env:setup
  1. Start the development server:
pnpm dev

Since this monorepo has a lot of applications and packages you may not need for your project, you can run the setup-template script to select which workspaces you want to keep:

pnpm template:setup

If you later want to add or remove workspaces, you can use the following commands:

pnpm workspace:add # Adds a workspace from the template to the project
pnpm workspace:remove # Removes a workspace from the project

Ports

Apps

Apps run in the 3000-3999 range.

  • App: 3000
  • API: 3001
  • Mobile: 3002
  • Desktop: 3003
  • Extension: 3004
  • Docs: 3005
  • Web: 3006

Packages

Packages run in the 8000-8999 range.

  • Redis: 8079
  • Database: 8080
  • Email: 8081
  • Queue: 8288

Development

Common Commands

Here are the most common commands you'll use during development:

  • pnpm dev - Start all applications in development mode
  • pnpm build - Build all applications
  • pnpm lint - Run linting across the codebase using Biome
  • pnpm format - Format code using Biome
  • pnpm typecheck - Run TypeScript type checking
  • pnpm check - Run linting and formatting
  • pnpm clean - Clean build artifacts
  • pnpm clean:all - Deep clean (build artifacts, cache, node_modules)

If you want to run a command for a specific workspace, you can use the following syntax:

pnpm <command> --filter <workspace>

Managing Dependencies

  • pnpm deps:check - Check for outdated dependencies
  • pnpm deps:update - Update dependencies interactively
  • pnpm deps:mismatch - List version mismatches across the monorepo
  • pnpm deps:sync - Fix version mismatches automatically
  • pnpm deps:graph - Generate a dependency graph visualization

Documentation