Skip to content

AndyOooh/event-dee-2

Repository files navigation

Logo

Connecting events

Landing · App · Storybook | Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Author
  6. Libraries

About The Project

Built With

  • Turborepo
  • Firebase
  • TypeScript
  • NodeJS
  • Next.js
  • Vite
  • Storybook
  • Recoil
  • TailwindCSS
  • DaisyUI

Intro

This project is bootstrapped as a monorepo with turborepo. It includes four apps:

  • landing - an SSG Next.js app.
  • app - a Next.js app.
  • vite-storybook - a Storybook app.
  • firebase-cloud-functions - a Firebase Cloud Functions backend.

It also includes five packages for shared configurations, types and UI components:

  • @repo/eslint-config
  • @repo/tsconfig
  • @repo/tailwind-config
  • @repo/types
  • @repo/ui (React component library)

(back to top)

Getting Started

To get a local copy up and running follow these simple steps.

Prerequisites

You must be running node v.18.17 or higher.

Installation

  1. Clone the repo:
    git clone [email protected]:AndyOooh/event-dee-2.git
  2. Install packages:
    yarn install

(back to top)

Usage

To have a functioning backend you have two options:

  • Ceate a Firebase project
  • Run with emulators

Firebase project

Create a firebase project and add the api key to apps/app/.env and other configurations in apps/app/firebase/clientApp.ts. Lastly, log in to your firebase account:

yarn firebase login

Emulators

You can run firebase emulators for cloud functions, firestore, auth and storage with:

turbo emulators

Emulators are available at:

Basic Scripts

For running tests and starting the development servers, turborepo is used. It is configured to run all apps concurrently. The commands are:

Run dev servers:

turbo dev

Lint

turbo lint

Build apps:

turbo build

To clean the cache and remove build folders and other generated code, run:

turbo clean

In addition you might want to delete the root node_modules folder.

Filtering apps

You can also run the apps separately by using the --filter flag in combination with the app name: landing, app, firebase-cloud-functions or vite-storybook. For example, to start the client development server only, run:

turbo dev --filter landing

Or you can navigate to the specific app/package directory and use the local commands there with yarn.

Once you have the development servers running, you can access the:

(back to top)

Roadmap

  • Bootstrap repo, apps, packages and configs.
  • Firebase set up.
  • Storybook set up.
  • Emulators set up.
  • Landing page.
  • Authentication flows.
  • User profiles - edit, delete, view.
  • Event creation - create, edit, delete, view.
  • Event feed.
  • Optimize SSG.
  • Contract - create, edit, delete, view.
  • Contract - sign.
  • Video upload, storage and viewing.
  • Search.
  • Payment.
  • ...

See the open issues for a full list of proposed features (and known issues).

(back to top)

Author

👤 AndyOooh

(back to top)

Library docs

(back to top)