Depricated Working on Docs-pdf
- Description
- Requirements
- Installation
- Running the App Locally with Git
- Running the App Locally with Docker
- Startup Script
- Demo | Deployment
- Details
This assignment aims to design and implement a full-stack web application that facilitates the uploading and parsing of a W-2 form. The web application should let users chat and ask specific questions about their W-2 data.
-
Node
-
python
-
docker
-
supabase account database
-
enable auth email in supabase dashboard.
- also disable email verification for ease of testing.
-
enable storage bucket name
TaxGPT
-
supabase database schema
create table public.profiles ( id uuid not null references auth.users on delete cascade, file_name text, file_content text, primary key (id) );
-
get llama api key llama-api
-
get llama index api key llama-index
client .env file
VITE_API_URL=http://127.0.0.1:5555/api
VITE_SUPABASE_URL=<In Supabase Dashboard>
VITE_SUPABASE_ID=<In Supabase Dashboard>
VITE_SUPABASE_ANON_KEY=<In Supabase Dashboard>
server .env file
SUPABASE_URL=<In Supabase Dashboard>
SUPABASE_ANON=<In Supabase Dashboard>
SUPABASE_JWT=<In Supabase Dashboard>
SUPABASE_KEY=<<In Supabase Dashboard>>
LLAMA_API=<llama-api>
LLAMA_PARSE=<llama-index>
client
git clone https://github.com/ZafeerMahmood/taxgptAssignment.git
cd client
npm install
npm run dev
server
cd server
pip install -r requirements.txt
python3 server.py | py server.py
does not require any environment setup
git clone https://github.com/ZafeerMahmood/taxgptAssignment.git
docker-compose up -d
requires selenium to run auto logins in the user and wait for file input
cd start
pip install selenium
python3 main.py | py main.py
no longer available
- The client is built using
vite react
and the server is built usingflask
. - for llm i used
llama-2b-chat
model. - for parsing w2 form i used
llama-index
model. - for database i used
supabase
. - for deployment i used
google cloud run
andcloudflare pages
. - thought process is in
./TODO.md
- requirements are in
./Requirements.md
- use zustand for state management.
- daisyUI for tailwindcss components.
- supabase-js for auth services.
- flask for api.
- supabase for database.
- llama for llm.
- llama-index for parsing w2 form.