expense-app
expense-app copied to clipboard
This app is an implementation of React with Supabase, simply have Authentication and CRUD operation.
ExpenseApp๐ฐ
ExpenseApp is an app to see you expense history, income history and help you notes what you're buying lately๐ฐ
I built this only on weekend and sometimes at night to spend my lonely time as a Frontend Developer
What's For
This app is an implementation of React with Supabase, simply have Authentication and CRUD operation.
Stack
- Vite โก
- React โ๏ธ
- Supabase ๐ฅ
- TailwindCSS ๐จ
- Miscellaneous ๐
- Framer Motion ๐๏ธ
- Jotai ๐ป
- Headless UI ๐
- React Hot Toast ๐
- React Hook Form ๐
Todos
- [x] Signin
- [x] Signup
- [x] Signout
- [x] Read Expense
- [x] Write Expense
- [x] Update Expense
- [x] Delete Expense
- [x] Read Expense History
- [x] Write Expense History
- [x] Delete Expense History
- [x] Update Expense History
- [x] Update User Profile Picture
- [x] Update User Username
- [x] Update User Email
- [x] Update User Password
- [x] Forgot Password
- [x] oAuth with Google and GitHub
Develop on your local machine
- Register to Supabase
- Get your projects' Anon Key and your Supabase project URL
- Paste it on
.env.file
- Create table
expense
, with 6 columns:-
id
(uuid)
default value:uuid_generate_v4()
as primary key -
user_id
(uuid)
relation withuser.id
-
history_id
(uuid)
mark asunique
-
created_at
(timestamptz)
default value:now()
mark asallow nullable
-
title
(text)
-
total_money
(int4)
-
- Create table
history
, with 6 columns:-
id
(uuid)
default value:uuid_generate_v4()
as primary key -
user_id
(uuid) relation with user.id -
expense_id
(uuid)
relation withhistory.history_id
-
created_at
(timestamptz)
default value:now()
mark asallow nullable
-
source
(text)
-
type
(text)
this actually should be 2(income, and outcome), default value:income
-
amount
(int4)
-
- Create bucket
profiles
for profile picture - Inside
profiles
bucket, create folderavatar
- Create policies for tables and bucket
- soon..
Contribution
PR's are always open