Table of Contents
Cardboard is a single page application (SPA) for managing private notes.
Great to see you here!
Below you will find instruction how to setup project locally on your machine.
- Ensure that you have Node.js installed on you machine.
- Ensure that you have Yarn installed on you machine.
- Install required project dependencies by typing below command.
yarn install
- Start back-end service by typing:
yarn server
- Start front-end development by typing:
yarn start
all commands must be typed in terminal in project root directory
For architecture flow chart see here.
├── src
│ ├── api
│ │ ├── client.ts // axios client setup
│ │ └── requests.ts // http requests configured
│ ├── components // UI layer
│ │ ├── Board
│ │ │ ├── Board.container.tsx // Container component for keeping business logic inside
│ │ │ ├── Board.tsx // Dumb, presentational component
│ │ │ └── __tests__ // Board integration and unit tests (always try to keep close to implementation)
│ │ └── Icons
│ ├── data // Domain separated data layer
│ │ ├── card
│ │ │ ├── api.ts // Card API requests
│ │ │ ├── dto.ts // Data transfer object (this is how data comes from backend)
│ │ │ ├── factory.ts // Factory for generating models, useful in tests
│ │ │ └── model.ts // Domain types used across front-end app
│ │ └── index.ts
│ ├── hooks // handy, and reusable UI hooks
│ │ ├── useInput.ts
│ │ └── useOutsideClick.ts
│ ├── theme // global styles and tokens
│ │ ├── global.css
│ └── utils // handy functions for solving repeatable problems
│ └── generators.ts
All rights to this project belongs to Nerdbord. This project is for educational purposes only.