Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/czystyl/the-bank
Fulls Stack workshop materials
https://github.com/czystyl/the-bank
Last synced: 4 days ago
JSON representation
Fulls Stack workshop materials
- Host: GitHub
- URL: https://github.com/czystyl/the-bank
- Owner: czystyl
- Created: 2023-08-14T13:31:11.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-09-28T19:43:57.000Z (about 1 year ago)
- Last Synced: 2024-10-12T13:26:49.665Z (about 1 month ago)
- Language: TypeScript
- Homepage: https://slides.com/czystyl/code
- Size: 19.8 MB
- Stars: 1
- Watchers: 1
- Forks: 19
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# The Bank
[![VIDEO DEMO](https://github.com/czystyl/the-bank/blob/main/demo.mov)](https://github.com/czystyl/the-bank/blob/main/demo.mov)
## Project Structure
```
.github
└─ workflows
└─ CI with pnpm cache setup
.vscode
└─ Recommended extensions and settings for VSCode users
apps
├─ mobile
| ├─ Expo SDK 49
| ├─ React Native using React 18
| ├─ Navigation using Expo Router
| ├─ Tailwind using Nativewind
| └─ Typesafe API calls using tRPC
└─ web
├─ Next.js 13
├─ React 18
├─ Tailwind CSS
└─ shadcn UI
tooling
├─ eslint
| └─ Eslint config for monorepo packages
├─ prettier
| └─ Prettier config for monorepo packages
├─ tailwind
| └─ Tailwind configuration shared in WEB and mobile
└─ tsconfig
└─ TypeScript config for monorepo packages
packages
├─ api
| └─ tRPC v10 router definition
├─ core
| └─ Shared business logic
├─ env
| └─ Shared Tailwind & Eslint configs
├─ scripts
| └─ Scripts to interact with DB like seed etc
└─ db
└─ Typesafe db calls using Drizzle
```## Pre-requirements
Make sure that you have installed and configured:
- **Node.js**: I recommend using NVM (Node Version Manager). [Installation Guide](https://github.com/nvm-sh/nvm)
- **pnpm**: [Installation Guide](https://pnpm.io/installation#using-npm)
- **iOS Simulator**: [Installation Guide](https://docs.expo.dev/workflow/ios-simulator/)
- **Android Studio Emulator**: [Installation Guide](https://docs.expo.dev/workflow/android-studio-emulator/)## Quick Start
To get it running, follow the steps below:
### Setup dependencies
- Install dependencies
```sh
pnpm i
```- Copy example .env files
```sh
cp .env.example .env
# Expo needs a different .env file
cp apps/mobile/.env.example .env
```- Database synchronization
```
pnpm db:push
```## Get started!
We need to run mobile and web in parallel
- Web:
```sh
pnpm web
```- iOS simulator:
```sh
pnpm mobile
```## Clear workspace
If you need to reinstall all packages run:
```sh
# Clear all deps and cache
pnpm clean:workspaces# Install all dependencies
pnpm i
```