Currency Exchange Point web app.
Allows to update the exchange rate by making changes to the table in the admin panel. Every 24 hours, it saves exchange rates in the form of a chart where you can see the price history of the last 7 days
This is a T3 Stack project bootstrapped with create-t3-app
.
Core tech / platforms:
- Typescript
- Next.js
- Prisma - setup with postgreSQL database
- Supabase - postgreSQL database hosting
- tRPC - for end-to-end typesafe API. Such a great developer experience!
- Auth0
- Emotion Styled Components
- Formik - for handling forms
- dnd kit - my personal favorite when it comes to dnd
- Github Actions - cron for saving exchange rates history to charts
- Install install dependencies by running:
npm install
# or
yarn install
-
Add required environment variables. Check .env.example and src/env/schema.mjs to see what you need! I know, there are quite a few of them out there. However you don't need to be worried, if you forget any variable, you will get the information when you run the app.
-
Next step is Prisma.
# start with this, to see your possibilities
npx prisma
# create migrations and apply them to your database
npx prisma migrate dev
# push the Prisma schema state to the database
npx prisma db push
# generate artifacts (basically all types e.g. Prisma Client). After this command, I recommend restarting your IDE or Typescript Server to make sure everything works fine.
npx prisma generate
- You are good to go to run this app!
npm run dev
# or
yarn run dev