No description
- TypeScript 35.1%
- PLpgSQL 33.5%
- Python 31.2%
- JavaScript 0.1%
- CSS 0.1%
|
|
||
|---|---|---|
| .vscode | ||
| db | ||
| public | ||
| src | ||
| .gitignore | ||
| eslint.config.mjs | ||
| New Prod.session.sql | ||
| next.config.ts | ||
| package-lock.json | ||
| package.json | ||
| postcss.config.mjs | ||
| project_info.md | ||
| README.md | ||
| recommendation_result.json | ||
| tailwind.config.ts | ||
| test_recommendation_result.json | ||
| tsconfig.json | ||
PC Builder
A web application designed to help users build custom PC configurations using a Next.js frontend with a PostgreSQL database.
Features
- Skilled Builder Mode: A streamlined interface for experienced users to directly select PC components with compatibility checks.
- Beginner Builder Mode: An interactive chat-based interface that guides novice users through component selection based on their needs and budget.
- Component Database: Comprehensive database of PC parts with detailed specifications and compatibility information.
- Smart Compatibility: Automatically filters compatible components based on previous selections.
- AI-Powered Guidance: Uses AI to provide personalized PC build recommendations.
Technology Stack
- Frontend: Next.js 15.1.6 with React 19
- Styling: Tailwind CSS
- Database: PostgreSQL
- AI Integration: Ollama with qwen2.5:14b model
- Markdown Rendering: react-markdown for formatted chat responses
Getting Started
- Clone the repository
- Install dependencies:
npm install - Set up your environment variables (copy
.env.local.sampleto.env.localand fill in the values) - Set up the PostgreSQL database using the scripts in
src/db_setup/ - Run the development server:
npm run dev - Open http://localhost:3000 with your browser
Project Structure
The application is organized into the following main directories:
src/app/: Next.js app router pagessrc/components/: React componentssrc/db_setup/: Database initialization scriptssrc/lib/: Utility functions and librariessrc/data/: Static data files
Development Scripts
npm run dev: Start the development server with Turbopacknpm run build: Build the application for productionnpm run start: Start the production servernpm run lint: Run ESLint to check code qualitynpm run test-recommendation: Test the recommendation systemnpm run test-api: Test the API endpoints
Database Schema
The application uses a PostgreSQL database with tables for different PC components (CPU, motherboard, GPU, etc.) and compatibility relationships between them.
License
This project is private and not licensed for public use.