Giter VIP home page Giter VIP logo

developer.tbd.website's Introduction

TBD Developer Site

All Contributors

This is a monorepo powered by pnpm that includes a documentation site, tutorials and examples. This repository allows you to conveniently manage multiple projects within a single repository.

Prerequisites

Before you begin, ensure that you have the following installed on your local machine:

  • Node.js (version 18.16.0 or later)
  • pnpm (version 7.29.1 or later)

Installation

To install pnpm globally on your local machine, follow these steps:

  1. Open a terminal or command prompt.
  2. Run the following command:
npm install -g pnpm
  1. Wait for the installation process to complete.

Note: If you already have pnpm installed globally, you can skip this step.

Getting Started

To get started with the monorepo and run the available scripts, follow these instructions:

  1. Clone the repository:
git clone https://github.com/TBD54566975/developer.tbd.website.git
  1. Navigate to the project directory:
cd developer.tbd.website
  1. Install project dependencies using pnpm:
pnpm install
  1. Once the installation is complete, you are ready to run the available scripts.

Scripts

The following scripts are available for running specific tasks within the monorepo:

  • pnpm start: Runs the docs site for auto-refresh in development mode
  • pnpm start:tutorial-todo-starter: Starts the local server for the todo app tutorial
  • pnpm start:tutorial-todo-completed: Starts the local server for the completed todo app
  • pnpm start:widget: Runs the completed web5 widget
  • pnpm clear: Runs docusaurus clear
  • pnpm build: Runs the production build for the site so it can be hosted by a static web server. The completed build will be in the folder site/build.

Note

This repo made a switch from using npm to pnpm as the package manager in July 2023. If you have used prior versions of this repo built on your machine with npm, you may encounter build failures, like:

[ERROR] Unable to build website for locale en.
[ERROR] Error: Cannot mix different versions of joi schemas
    at new module.exports (/Users/alr/git/TBD54566975/developer.tbd.website/site/node_modules/@hapi/hoek/lib/error.js:23:19)
    at module.exports (/Users/alr/git/TBD54566975/developer.tbd.website/site/node_modules/@hapi/hoek/lib/assert.js:21:11)
    at exports.isSchema (/Users/alr/git/TBD54566975/developer.tbd.website/site/node_modules/joi/lib/common.js:132:5)
    at internals.schema (/Users/alr/git/TBD54566975/developer.tbd.website/site/node_modules/joi/lib/compile.js:66:16)
    at exports.schema (/Users/alr/git/TBD54566975/developer.tbd.website/site/node_modules/joi/lib/compile.js:17:26)
    at internals.Base.$_compile (/Users/alr/git/TBD54566975/developer.tbd.website/site/node_modules/joi/lib/base.js:646:24)
    at /Users/alr/git/TBD54566975/developer.tbd.website/site/node_modules/joi/lib/types/keys.js:262:92
    at exports.tryWithPath (/Users/alr/git/TBD54566975/developer.tbd.website/site/node_modules/joi/lib/common.js:176:16)
    at internals.Base.method [as keys] (/Users/alr/git/TBD54566975/developer.tbd.website/site/node_modules/joi/lib/types/keys.js:262:32)
    at internals.Base.method [as append] (/Users/alr/git/TBD54566975/developer.tbd.website/site/node_modules/joi/lib/types/keys.js:191:29)

To fix this, clear out all instances of node_modules in this monorepo, then run pnpm install. This can be done like:

$> npx npkill
[Follow prompts to delete all node_modules folders]
[CNTL-C to exit]
$> pnpm install

This will update your dependences to the mechanism used by pnpm.

Running commands

If for whatever reason, you'd like to run pnpm commands on specific packages only, use the --filter flag and refer to the package name of the project.

Filter docs: https://pnpm.io/filtering

For example, if you wanted to add a library to the docs site itself:

pnpm --filter docs add some-library

If you look at the package.json under the path: /site/package.json, you'll see the "name" attribute says "docs", which is what we're using to target.

Contributing

If you wish to contribute to this project, please follow the guidelines outlined in the CONTRIBUTING.md file.

License

This project is licensed under the MIT License.

Contributors โœจ

Thanks goes to these wonderful people (emoji key):

Yuusuf Oyelola Oladipo
Yuusuf Oyelola Oladipo

๐Ÿ–‹
Michael Brown
Michael Brown

๐Ÿ’ป
nearlyjuly
nearlyjuly

๐Ÿ’ป ๐Ÿ’ฌ
Prod1gy0ne
Prod1gy0ne

๐Ÿ“–
Andor Kesselman
Andor Kesselman

๐Ÿ’ป ๐Ÿ“– ๐Ÿ’ก
Aditya Kode
Aditya Kode

๐Ÿ“–
Jose Sahagun
Jose Sahagun

๐Ÿ’ป
Mathieu Rivest
Mathieu Rivest

๐Ÿ“–
shoito
shoito

๐Ÿ“–
Sarah Nair
Sarah Nair

๐Ÿ“–
Adewale Abati
Adewale Abati

๐Ÿ’ป ๐Ÿ–‹
alec-brooks
alec-brooks

๐Ÿ“–

This project follows the all-contributors specification. Contributions of any kind welcome!

developer.tbd.website's People

Contributors

angiejones avatar bobbilee19 avatar dayhaysoos avatar alrubinger avatar ebonylouis avatar michaelneale avatar andorsk avatar allcontributors[bot] avatar kirahsapong avatar mistermoe avatar danlourenco avatar diehuxx avatar chris-tbd avatar nearlyjuly avatar alec-brooks avatar mikebolt avatar aguywithcode avatar edwardirby avatar acekyd avatar adityakode avatar decentralgabe avatar jsahagun91 avatar mathieurivest avatar prod1gy0ne avatar sarathcodes avatar tlongwell-block avatar shoito avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.