U-Well is a Next.js application built for a telehealth startup to match potential patients with therapists. This ongoing project involves collaboration with a backend engineer and a content creation team. It requires careful design, secure handling of sensitive data, and delivering an excellent user experience.
I started working on this project in March 2024. Throughout the development process, I have utilized Test Driven Development (TDD) with the aid of Jest to ensure high-quality code. For photo editing and stock photos, I have leveraged Adobe Express. Additionally, I have been preparing the site for deployment on AWS (Amplify), ensuring a robust and scalable infrastructure.
Freelance
React
Next.js
TailwindCSS
Prisma
Shadcn-UI
Jest
React Hook Form
Zod
Zustand
Framer Motion
Adobe Express
AWS
This project is currently in the second stage of its development. The application has a test build deployed on Vercel and will soon be deployed to AWS using the Amplify service. It will then be connected to a MySQL database via Prisma. Following that, the client has requested the implementation of user authentication and the creation of an admin panel to manage patient and provider user data.
For this project, I chose to use Next.js. While I have experience with Angular, I find the React ecosystem offers more robust tools. The client required several custom features, including two multi-step forms, one with over thirty questions. This made it an ideal scenario to leverage the reusable component architecture provided by React. Additionally, Next.js offers built-in solutions for routing, SEO management, performance optimization, and security, often automating these processes to enhance efficiency and reliability.
Throughout this project, I have learned a great deal, with more yet to come. On the design front, I've discovered the value of simplicity and its effectiveness. I deepened my understanding of AWS Amplify, IAM roles, and permissions. Given that this site handles sensitive patient data, I prioritized learning more about cybersecurity. This led me to implement content security policies in Next.js.
To further enhance my knowledge, I installed Kali Linux via VirtualBox and explored various penetration testing tools. This journey allowed me to better understand SQL injection and XSS attacks, as well as the front-end measures necessary to prevent them. For example, I used Prisma in this project, which utilizes parameterized queries to help prevent SQL injection attacks.