A platform to create chatbots for constituent engagement
- ๐ Documents: upload documents to give GPT more context
- ๐๏ธ Forms: collect user data seamlessly through natural, conversational forms
- ๐ฌ Slack integration: get notified when forms are submitted
- ๐ Analytics: access insights on chatbot usage and user engagement
View more images (documents uploading, forms, analytics, chatbot demo)
Uploading documents to provide context and knowledge in answering questions:
Forms for collecting information from users:
Form submissions page:
Chatbot demo for admins to test form submissions and other features:
Conversations table:
Analytics page showing total number of conversations and breakdown by conversation category:
Integrations page:
This projects requires
- Node v18+
- pnpm: Please follow the pnpm installation guide to install it
- Docker
After cloning the repository, run
pnpm i
Create a .env
file with the following:
DATABASE_URL=postgres://user:password@localhost:2430/civicconnect_db
OPENAI_API_KEY=
The database URL postgres://user:password@localhost:2430/civicconnect_db
is the local development database created in a Docker volume.
Create an OpenAI API key at platform.openai.com/api-keys.
To setup the local database and add seed data, run
pnpm db:reset # warning: this will delete all data in the local database
This commands runs
pnpm db:down
: deletes the databasepnpm db:up
: sets up the databasepnpm db:seed
: runs the seed script to populate the database with sample data
To start the development server, run
pnpm dev
- Nextjs: make sure you are looking at the docs for the "App Router"
- LangChain: we're using the JS library
- Prisma: see
prisma/schema.prisma
for the Postgres DB schema - TailwindCSS
- ShadcnUI: this UI library takes care of a lot of the difficult stuff for us, like complex components (dropdowns, autocomplete, etc) and accessibility
If you have any questions about the project, please contact Parth Kabra ([email protected]).
The videos are for a chatbot "Moulton Bot" created for Congressman Seth Moulton's office.
chat.mp4
new.mp4
docs-uploading.mp4
form-editing.mp4
form-submission.1.mp4
analytics.mp4
Group members:
- Alaโa Tamam
- Isha Chadalavada
- Rohit Kaushik
- Parth Kabra
- Arjun Bhat
Under the advisement of Prof. Beth Noveck, Prof. Dan Jackson, Marci Harris and the PopVox foundation.