Skip to content

Commit f8c945d

Browse files
documents
1 parent cd43fd9 commit f8c945d

File tree

3 files changed

+77
-70
lines changed

3 files changed

+77
-70
lines changed

README.md

Lines changed: 51 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,59 +9,95 @@ Give me a ⭐️ if you like this project.
99
# 🌐 Live Demo
1010

1111
- App (available Mon-Fri, 9AM - 5PM AEST): https://tilelens.quangtechnologies.com
12-
- Feature Demo: https://www.youtube.com/watch?v=YjK48oZDZO8
13-
- Setup & Run Walkthrough: https://youtu.be/aLDVqkwxHoc
12+
- YouTube Demo Web: https://www.youtube.com/watch?v=XTw7MDPwpAI
13+
- YouTube Demo Mobile: https://www.youtube.com/watch?v=iKnnbLJBktw
1414

1515
# 🚀 TL;DR - How to Run Locally - A Single Container
1616

1717
## Pre-check
1818

1919
Free up these ports on your system:
2020
3306 (MySQL), 6379 (Redis), 27017 (MongoDB), 8000 (Backend), 5173 (Frontend), 2181 (Zookeeper), 9092 (Kafka)
21+
2122
Make sure Docker is installed
2223

2324
## RUN
2425

25-
# 🚀 TL;DR - How to Run Locally (On Mac)
26+
# 🚀 How to Run Locally (On Mac)
2627

2728
1. Run the script and follow the prompts
2829

2930
`./run.sh`
3031

31-
# 🚀 TL;DR - How to Run Cloud Native - AWS
32+
# 🚀 How to Run Locally (On Windows)
33+
34+
1. Run the script
35+
36+
`docker-compose up --build`
37+
38+
2. If you want to run the mobile version (you must run the first command before this)
39+
40+
On a new terminal
3241

33-
On Window please run with Administrator
42+
```
43+
cd mobile
44+
npm i
45+
npm run android
46+
```
47+
48+
# 🚀 How to Deploy - AWS
49+
50+
> ⚠️ **IMPORTANT:** On **Windows**, please run the command **as Administrator**.
51+
> ⚠️ **IMPORTANT:** You may need to manually change globally unique service names like S3.
3452
3553
1. Add frontend .env.production
3654

3755
```
3856
VITE_ENV=production
3957
VITE_API_URL=https://api.tilelens.quangtechnologies.com/api
4058
VITE_ASSETS_URL=https://assets.tilelens.quangtechnologies.com/assets
59+
VITE_SOCKET_URL=https://api.tilelens.quangtechnologies.com
4160
```
4261

4362
2. Add required terraform variables in devops/terraform.tfvars
4463

4564
3. Deploy the infrastructure
4665

66+
On Mac\Linux
67+
4768
```
4869
cd devops
4970
./init.sh
5071
./deploy.sh
5172
```
5273

74+
On Windows
75+
76+
```
77+
cd devops
78+
init.bat
79+
deploy.bat
80+
```
81+
5382
4. To cleanup the infrastructure
5483

5584
```
5685
cd devops
5786
./cleanup.sh
5887
```
5988

89+
OR
90+
91+
```
92+
cd devops
93+
cleanup.bat
94+
```
95+
6096
# Keywords
6197

62-
ReactJS, Redux, TailwindCSS, NodeJS, MongoDB, MySQL, Prisma, Redis, BullMQ, Docker, Terraform, AWS, JWT token, queue FIFO processing
98+
ReactJS, React Native, TailwindCSS, NodeJS, MongoDB, MySQL, Prisma, Redis, BullMQ, Socket.io,Kafka, Docker, Terraform, AWS
6399

64-
AWS Route53, Lambda, SQS, S3 + CloudFront, ALB, ECS (EC2), RDS (MySQL), DynamoDB
100+
Route53, Lambda, SQS, S3 + CloudFront, ALB, ECS (EC2), ECS (Fargate), RDS (MySQL), DynamoDB, MSK
65101

66102
GitHub Actions, CodePipeline, CodeBuild, CodeDeploy
67103

@@ -75,6 +111,9 @@ GitHub Actions, CodePipeline, CodeBuild, CodeDeploy
75111
- Handles image uploads, token auth, and renders only what’s needed
76112
- Allow users to clip images by drawing shapes. All math, no library.
77113
- Allow users to copy and paste images in an image.
114+
- 3D box view with ThreeJS.
115+
- Map locations with CesiumJS/ResiumJS.
116+
- Mobile version with React Native
78117

79118
## Backend
80119

@@ -84,14 +123,16 @@ GitHub Actions, CodePipeline, CodeBuild, CodeDeploy
84123
- Pushes image jobs to BullMQ (Redis) or SQS for async tiling
85124
- Uses MongoDB or DynamoDB to track processing status + metadata
86125
- MySQL or RDS MySQL is just for user accounts
126+
- Socket.io + Kafka allow streaming speak to control
87127

88-
## Worker (Node.js Standalone or Lambda)
128+
## Worker (Node.js/Python Standalone or Lambda)
89129

90130
- Pulls image jobs from Redis or SQS queue
91131
- Does the image tiling, clipping and blending
92132
- Saves tiles to /assets/tiles/{userId}/{imageId}/ or S3
93133
- Shared volume between backend and worker = instant availability
94134
- Updates Mongo or DynamoDB with final width/height and marks as processing: false
135+
- OpenAI Whisper base model for transcribe job
95136

96137
## Cloud Native AWS
97138

@@ -102,6 +143,8 @@ GitHub Actions, CodePipeline, CodeBuild, CodeDeploy
102143
- Backend -> ALB + ECS (EC2)
103144
- MySQL -> Amazon RDS (MySQL)
104145
- MongoDB -> Amazon DynamoDB
146+
- Kafka -> MSK
147+
- OpenAI Whisper model -> ECS (Fargate)
105148

106149
![Infras](https://github.com/Quanghihicoder/TileLens/blob/master/sample_images/infras.png)
107150

sample_images/infras.png

95.8 KB
Loading

0 commit comments

Comments
 (0)