Project Info
Inspiration
One of our teammates struggled to find an ideal dentist. She had to jump between multiple webpages — insurance portals, Google Maps, Yelp, etc. — just to make a decision.
What it does
Our framework follows a 3-step flow: Information Gathering — via APIs and user input Filtering — generate a shortlist of suitable dentists Conversational Recommendation — use an LLM-powered chatbot for personalized suggestions 📍 Outputs a List of Dentists Based on User Input: Location, Type of dental service, Preferred distance range ✨ Each Dentist Entry Includes: Dentist/Dental business name, Ratings, Clinic location, Contact information, Distance from user, Interior image of the clinic, Embedded Google Map, Link to view the map in full
Challenges we ran into
Expired API keys from earlier development Difficulty linking frontend and backend components
Accomplishments we're proud of
Identifying a real, relatable need from personal experience Getting hands-on with Cursor, Create.xyz, and WordExpress for building websites and chatbots
What's next
Make the chatbot smarter — ask more personalized, qualitative questions like “Are you anxious about dental visits?” or “Do you care more about gentleness or speed?” Add a text-to-voice feature to improve accessibility for broader audiences, supporting inclusivity and social justice Extend this idea in more physical and mental health application use cases
Personal Dentist Selection Tool
This project is a {Personal Dentist Selection Toolkit} that support physical well-being with accessible services. With information gathering and chatbot functions, users can make decision on selection and appointment of dentist easier, saving their time on selecting suitable dentist and enhance experience.
Demo Video
Interface & Example
Features
📍 Output a list of dentists based on your input:
- Your location
- Type of dental service
- Preferred distance range
✨ Each dentist section includes:
- Dentist name
- Ratings
- Clinic location
- Contact information
- Distance from your location
- Interior image of the clinic
- Embedded Google Map
- Link to view the map in detail
Installation & Setup
Follow these steps to get the project running locally:
- Clone the repository
git clone https://github.com/Yingxuan-Selina-Bian/CruzHacksDentist.git
cd CruzHacksDentist
- Create and activate a virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
- Install the required packages
pip install -r requirements.txt
- Set up environment variables: Create a .env file in the root directory and add your Gemini API key:
touch .env
Then edit .env and add your API keys.
License
This project is licensed under the Non-Commercial Public License (NCPL). This means:
✅ You can:
- Use this software for personal purposes
- Modify the software
- Share the software with others
- Contribute to the project
❌ You cannot:
- Use this software for commercial purposes
- Sell this software or any modifications of it
- Remove or modify this license notice
- All API keys and services used in this project require separate licenses and terms of service agreements.
Analysis
View
Metric
- 10
- 4
- 2
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- CSSIn code
- JavaScriptIn code
- Next.jsIn code
- ReactIn code
- Tailwind CSSIn code
- Google GeminiClaimed
5 of 6 appear in the indexed code. 1 claimed on Devpost could not be matched to code, which may simply mean the tool leaves no trace in the repository.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
126 KB
Source files
36
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
selina-bian-1122/CruzHacksDentist_PoweredByLLM
39 files · 9.0 MB · @ 2400fdc
Structure
Interface
12 files · 31%Screens, components and styles rendered to the user.
API & routing
17 files · 44%Request entry points: routes, handlers and controllers.
Application logic
2 files · 5%Domain rules, services and shared utilities.
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here — open the file browser to check anything the diagram implies.
Languages
- JavaScript98%
- Markdown2%
- YAML0%
- CSS0%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
package.json
npm · 6- next
- react
- react-dom
- +3 more
Declared in the repository’s manifests at the indexed commit. A declared package is not proof it is used, and runtime dependencies are listed first.
This project’s features have not been analysed yet.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.