|
@@ -1,81 +1,54 @@
|
|
-# atlas
|
|
|
|
-
|
|
|
|
-## About
|
|
|
|
-
|
|
|
|
-The components package holds the React components used in Atlas and their stories, while the app package contains the Atlas App itself.
|
|
|
|
-Given how the code is organized, the first time you clone the repo, you need to build the components package.
|
|
|
|
-
|
|
|
|
## Getting Started
|
|
## Getting Started
|
|
|
|
|
|
-After cloning the repo run:
|
|
|
|
|
|
+After cloning the repo, run:
|
|
|
|
|
|
```bash
|
|
```bash
|
|
$ cd atlas
|
|
$ cd atlas
|
|
$ yarn install
|
|
$ yarn install
|
|
|
|
+$ yarn start
|
|
```
|
|
```
|
|
|
|
|
|
-### Components Package
|
|
|
|
-
|
|
|
|
-The components package is located under `./packages/components`, so every command that follows should be prefixed by
|
|
|
|
-
|
|
|
|
-```bash
|
|
|
|
-$ cd packages/components
|
|
|
|
-```
|
|
|
|
-
|
|
|
|
-To start storybook run
|
|
|
|
-
|
|
|
|
-```bash
|
|
|
|
-$ yarn storybook
|
|
|
|
-```
|
|
|
|
|
|
+To start the app on `localhost:1234`, Storybook on `localhost:6006` and the bundler in watch mode.
|
|
|
|
|
|
-To build the components package and use it elsewhere, for example inside the app package, you can run:
|
|
|
|
|
|
+To build both the component package and the app together, run
|
|
|
|
|
|
```bash
|
|
```bash
|
|
$ yarn build
|
|
$ yarn build
|
|
```
|
|
```
|
|
|
|
|
|
-When developing, you can run the bundler in watch mode with
|
|
|
|
|
|
+To run tests (Currently WIP) run
|
|
|
|
|
|
```bash
|
|
```bash
|
|
-$ yarn start
|
|
|
|
|
|
+$ yarn test
|
|
```
|
|
```
|
|
|
|
|
|
-#### Populate `index.ts`
|
|
|
|
-
|
|
|
|
-Running
|
|
|
|
-
|
|
|
|
-```bash
|
|
|
|
-$ yarn index
|
|
|
|
-```
|
|
|
|
-
|
|
|
|
-will write import and exports from every file inside `src/components` to `src/index.ts`
|
|
|
|
-
|
|
|
|
-For the script to run properly make sure to follow the convention of naming a Component the same as the file is exported from.
|
|
|
|
|
|
+## Packages
|
|
|
|
|
|
-For example, exporting `Button` from `Button.tsx` will work while exporting `Cactus` from `Plant.tsx` will not.
|
|
|
|
|
|
+This monorepo consists of two packages, `app` and `@joystream/components` (the components package).
|
|
|
|
+This repo is managed with [yarn workspaces](https://classic.yarnpkg.com/en/docs/workspaces/)
|
|
|
|
|
|
-If you do not wish to follow this convention, you can just ignore the index script and run
|
|
|
|
|
|
+To run a command in a workspace:
|
|
|
|
|
|
```bash
|
|
```bash
|
|
-$ yarn build
|
|
|
|
|
|
+$ yarn workspace YOUR_WORKSPACE_NAME YOUR_COMMAND
|
|
```
|
|
```
|
|
|
|
|
|
-#### App package
|
|
|
|
-
|
|
|
|
-The components package is located under `./packages/app`, so every command that follows should be prefixed by
|
|
|
|
|
|
+For example, to add `react-spring` to `@joystream/components`:
|
|
|
|
|
|
```bash
|
|
```bash
|
|
-$ cd packages/app
|
|
|
|
|
|
+$ yarn workspace @joystream/components add react-spring
|
|
```
|
|
```
|
|
|
|
|
|
-Then run
|
|
|
|
|
|
+### Components Package
|
|
|
|
+
|
|
|
|
+The components package is located under `./packages/components` and can is usually referenced by `@joystream/components`.
|
|
|
|
+It is, as the name suggests, a component library and everything related to components and atomic parts of the UI belongs here.
|
|
|
|
|
|
-```bash
|
|
|
|
-$ yarn dev
|
|
|
|
-```
|
|
|
|
|
|
+### App package
|
|
|
|
|
|
-To start the app on `localhost:1234`
|
|
|
|
|
|
+The components package is located under `./packages/app` and is where the actual Atlas application lives.
|
|
|
|
+Business logic, full pages and data fetching should all reside here.
|
|
|
|
|
|
-## Deploy Storybook as a static site
|
|
|
|
|
|
+## Deploy Previews
|
|
|
|
|
|
-To deploy storybook as a static site, a `now.json` file has been setup for deployment with [Zeit Now](https://now.sh).
|
|
|
|
|
|
+Each PR has deploy previews for both for Storybook and for the App on Chromia and Netlify respectively.
|