AISENSUM Test - Axel Eldrian Hadiwibowo

Access APP on aisensum-app

FRONTEND - NEXT14 - frontend-file

BACKEND - FLASK - MYSQL - backend-file

Here are the tasks that I have completed.

Task
Frontend: CRUD without Refresh (Tanstack)
Frontend: loading with skeleton, Filter, Search, and Pagination
Frontend: Responsive application (mobile, desktop, tablet)
Frontend: Clean-code file structure
Frontend: Good Performance (Page Speed avg 90%>)
Frontend: Reusable Component (shadcn)
Frontend: Form Validation (zod)
Backend: Create app with flask and mysql
Backend: CRUD
Backend: JWT validation (created but not applied)
Backend: clean-code
APP: Application are completed host on vercel

FRONTEND - DOCUMENTATION

CRUD - Customer

Get Customer

getcustomer

Add Customer

addcustomer

Update Customer (with patch)

updatecustomer

Delete Customer

deletecustomer

Loading, search, filter, and pagination

loading with skeleton

image

search name

search

custom header

custom

pagination

pagination

Responsive

responsive

Clean Code

You can see from github

Good Performance

mobile

image

desktop

image

Form Validation

validation

Reusable component

You can see from github

BACKEND - DOCUMENTATION

Base URL : https://flask-aisensum.vercel.app/

i created JWT authentication, and autorization too, but i dont implemented because the application dont have sign up or login section. u can see from my github backend-axel

API Reference

Get all customer

  GET /customer

Get add customer

  POST /customer
form-data Type
name string
username_ig string
fav-color string

Get update customer

  PUT /customer/<id>

but, i used PATCH instead PUT

  PATCH /customer/patch/<id>
form-data Type
id number
name string
username_ig string
fav-color string

Delete update customer

  DELETE /customer/<id>
form-data Type
id number

Setup & Run

Setup FRONT END - NEXT JS

  git clone https://github.com/eldrians/next_aisensum.git

  npm i

  create and fill .env.local

  npm run dev

Setup BACK END - FLASK MYSQL

file : flask-aisensum-github

  git clone https://github.com/eldrians/flask_aisensum.git

  npm i -g vercel

  pip install mysql.connector flask_cors jwt

  create and fill .env

  Vercel dev