Skip to content

Digital workspace to streamline workflows and collaborate with others, made for everyone.

License

Notifications You must be signed in to change notification settings

tutur3u/platform

Tuturuuu Monorepo

Tests Supabase

This repository is a monorepo for all of Tuturuuu's services, powered by Turborepo. View our documentation at docs.tuturuuu.com.

What's inside?

This turborepo uses pnpm as a package manager. It includes the following packages/apps:

Apps

  • app: a Next.js app with Tailwind CSS support that contains all public information about Tuturuuu, including the landing page, pricing plans, branding-related resources and Tuturuuu's services through a web application interface. On production, this app is located at tuturuuu.com.

Packages

  • ui: a stub React component library with Tailwind CSS shared by the web application.
  • eslint-config: ESLint configurations (includes eslint-config-next and eslint-config-prettier).
  • typescript-config: tsconfig.jsons used throughout the monorepo.

Utilities

This turborepo has some additional tools already setup for you:

Setup

Before proceeding to the Build and Develop sections, you should have pnpm installed on your local machine. The most common way to install it is using npm:

npm install -g pnpm

More information can be found at the pnpm installation page.

After installing pnpm, you can install all dependencies by running the following command:

pnpm install

or

pnpm i

Build

To build all apps and packages, run the following command:

pnpm build

Develop

To develop all apps and packages (without requiring a local setup), run the following command:

pnpm dev

To stop development apps and packages that are running on your local machine, run the following command:

pnpm stop

Better Development Experience

In case you want to run all local development servers, run the following command:

pnpm devx

Running devx will:

  1. Stop the currently running supabase instance and save current data as backup (if there is any)
  2. Install all dependencies
  3. Start a new supabase instance (using backed up data)
  4. Start all Next.js apps in development mode

If you want to have the same procedure without the backup, you can run pnpm devrs instead. This will:

  1. Stop the currently running supabase instance (if there is any)
  2. Install all dependencies
  3. Start a new supabase instance (with clean data from seed.sql)
  4. Start all Next.js apps in development mode

In case you don't want to run a local supabase instance, you can run pnpm dev instead.

Local development

There are 5 seed accounts that are already set up for local development:

  1. local@tuturuuu.com
  2. user1@tuturuuu.com
  3. user2@tuturuuu.com
  4. user3@tuturuuu.com
  5. user4@tuturuuu.com

Test

To run all tests, run the following command:

pnpm test

Note: Tests are still a work in progress. We're currently working on adding tests to all packages to ensure the best quality possible.