Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/antoinekm/ternoa-assessment

Capsule Corp. Labs assessment
https://github.com/antoinekm/ternoa-assessment

Last synced: 17 days ago
JSON representation

Capsule Corp. Labs assessment

Awesome Lists containing this project

README

        





Ternoa

Assessment





Made by Antoine Kingue




Ternoa assessment for the position of Senior Developer.

## Getting Started

This project is made with [Turborepo](https://turbo.build/repo) and [Yarn](https://yarnpkg.com/).

1. Clone the repository

```bash
git clone https://github.com/AntoineKM/ternoa-assessment
```

2. Go to the project directory

```bash
cd ternoa-assessment
```

3. Install dependencies

```bash
yarn install
```

4. Setup the environment variables

In each app there is a `.env.example` file. You need to copy it and rename it to `.env` and fill the variables. You can find the variables in the [apps README's](#apps).

5. Now you can use the following commands:

- `yarn dev` - Runs `turbo dev` to start turborepo in development mode
- `yarn build` - Runs `turbo build` to build the project
- `yarn start` - Runs `turbo start` to start turborepo in production mode (only after `yarn build`)
- `yarn lint` - Runs `eslint` to lint the project

### Apps

For more details and the choices I made visit each app:

- [api](./apps/api) - Express API
- [contracts](./apps/contracts) - Smart contracts
- [native](./apps/native) - Expo app
- [web](./apps/web) - Next.js app

## Demo

Visit [live demo](https://nft.hop.sh) to see the project in action.

[![Demo](./assets/demo.png)](https://nft.hop.sh)

## Root choices

- Turborepo - To manage the monorepo
- Yarn - To manage the dependencies (I would have preferred to use pnpm but there are still issues with expo and monorepos)
- ESLint - To lint the code (with my own config)
- Prettier - To format the code
- Node >=16 - Unfortunately `@polkadot/api` does not support older versions
- Hop - To deploy the project for free

To know more about the choices I made for each app [visit their README's](#apps).

## License
[MIT](LICENSE)