Prototype Demographic Application
- Published on
- Authors
- Name
- Brian Kimball
Preface
This was built as a proof of concept for a potential client. The idea was to build their customer database and easily attach demographic data to their customer. This would be able to send courtesy emails on upcoming anniversaries or birthdays. There are other services that do that now, but they wanted something that would tie into their other software.
Technical Decisions
The backend is written in Typescript and uses feathers.js. Feathers provides an easy way to stand up a node server with a rest api and web sockets. It was easy to create services and hooks allowing me to rapidly prototype CRUD operations.
The frontend is written in Typescript using vite and react.js. SSR (server side rendering) was not needed, so I decided to skip the complexity and just use vite to bundle an SPA (single page application). For UI (user interface) I use the fantastic shadcn/ui which marries together my favorite styling library tailwind and accessibility components in radix ui.
The infrastructure is built on Docker. The database is MySQL and the proxy server is traefik. I've used Traefik in the past as it's easy to connect to docker containers.