A tool designed to help educators, teachers, and policymakers better determine how their curriculum aligns with Computer Science Teachers Association (CSTA) standards. This application provides a PDF analysis tool to identify relevant standards in educational materials.
Upload educational materials (PDF format) to:
- Automatically identify relevant CSTA National standards
- View matching state standards
- Adjust confidence thresholds for matches
- See detailed information about each standard
- Frontend: Next.js, React, TailwindCSS
- Backend: Next.js API routes
- Database: PostgreSQL with Prisma ORM
- AI: OpenAI API for content analysis
- Vector Database: Pinecone for semantic search
- Data Processing: Custom data processing for standards data
- Node.js (v18 or higher)
- Yarn
- PostgreSQL database
- OpenAI API key
- Pinecone API key
Create a .env
file in the root directory with the following variables:
# Database
DATABASE_URL="postgresql://username:password@localhost:5432/csta_standards"
# OpenAI
OPENAI_API_KEY="your-openai-api-key"
# Pinecone
PINECONE_API_KEY="your-pinecone-api-key"
- Install PostgreSQL if you haven't already
- Create a new database:
createdb csta_standards
- Update the
DATABASE_URL
in your.env
file with your PostgreSQL credentials
For more information on setting up PostgreSQL, refer to the official documentation.
- OpenAI API Key: Sign up at OpenAI Platform and create an API key
- Pinecone API Key: Create an account at Pinecone and create an API key
-
Clone the repository:
git clone https://github.com/appinventor-foundation/csta-linking.git cd Data-Processing
-
Install dependencies:
yarn install
-
Generate Prisma client:
yarn generate
-
Start the development server:
yarn dev
-
Open http://localhost:3000 in your browser to see the application.
- Navigate to the PDF Analysis page by clicking "Analyze PDF" on the home page
- Upload a PDF file containing educational material
- Select a state (optional) to see state-specific standards
- Adjust the confidence threshold as needed
- Click "Upload and Analyze" to process the document
- View the matching CSTA standards and related state standards