AutonomousVehicleControlBeginnersGuide
Python sample codes and documents about Autonomous vehicle control algorithm. This project can be used as a technical guide book to study the algorithms and the software architectures for beginners.
翻訳待ち
No updates detected yet. GitHub releases will appear here.
Find USF Tampa classes by grade history, instructor, and the latest observed seats.
翻訳待ち
Loading the full README. The saved excerpt is shown below.
Find your next USF class.
Search courses and instructors, compare historical grade distributions, and check the latest observed seats for USF Tampa.
• Search by course code, CRN, subject, number, title, or instructor.
• Compare an instructor's past grades in that course, with sample sizes and covered terms.
• Browse GenEd requirements and see seat counts with their last-checked time.
• Open Rate My Professors links and copy a CRN for registration in OASIS.Read the full README ↗Find your next USF class.
Search courses and instructors, compare historical grade distributions, and check the latest observed seats for USF Tampa.
A React/TypeScript frontend talks to a FastAPI backend backed by PostgreSQL on Supabase. A background worker refreshes USF schedule data; historical grade imports retain their source and academic term. The API, worker, and frontend are hosted on Render.
Grade history comes from USF InfoCenter reports. Missing history stays unavailable, and small samples are labeled. Past grades are not a prediction of your grade; confirm seats in OASIS. RMP links are references only—ratings and reviews are not imported or used in scoring.
Requires Node.js and npm. From the repository root:
cd web
npm ci
Copy web/.env.example to web/.env.local, keeping VITE_USE_MOCK_DATA=true, then run npm run dev. This mode uses labeled synthetic fixtures and needs no database.
Requires Python 3.12+, uv, Node.js, and Docker.
uv sync from the repository root..env.example to .env. The included connection string targets local Docker PostgreSQL.docker compose up -d db
uv run alembic upgrade head
uv run uvicorn easy_a.api.app:app --reload
web/.env.local:VITE_USE_MOCK_DATA=false
VITE_API_BASE_URL=http://localhost:8000
npm ci and npm run dev from web/.A fresh database is empty. Schedule and approved aggregate grade data must be imported separately; production source exports are not included. See the operations runbook and ingestion scripts.
From the repository root:
uv run pytest
uv run ruff check .
uv run mypy src migrations scripts tests
From web/:
npm test
npm run lint
npm run typecheck
npm run build
PostgreSQL integration tests require a separate test database via EASY_A_TEST_POSTGRES_URL.
GET /api/v1/search finds instructors by course; /api/v1/rankings/search accepts a course_id
and exact listed instructor to show their sections. See /docs on the API for parameters.
Displayed A share is A / (A + B + C + D + F), accompanied by the observed grade count. It is distinct from the backend's historical easiness score.
The backend combines normalized grade favorability (80%) and the complement of withdrawal rate (20%), using Bayesian shrinkage for small samples. Seats, GenEd requirements, modality, syllabus signals, and RMP links do not affect that score.
Instructor scoring requires at least 30 effective graded students and a usable instructor assignment in the same course. Grade favorability is shrunk toward the course mean with a prior strength of 30; course-level grade priors and withdrawal priors remain 60.
Laboratory sections use course-level history and are excluded from instructor-level statistics. Staff and blank names are never assigned to a named instructor. Names are matched within a course, not pooled across courses. Single-term histories are labeled without an extra scoring penalty.
When instructor evidence is insufficient, scoring falls back through course, subject, and global history. A subject or global fallback is never presented as observed course history. Confidence labels describe data coverage, not certainty.
Implementation: analytics · rankings
Only approved aggregate grade data and its provenance belong in the application. Never commit raw grade exports, student-level records, credentials, or .env files. Tests use synthetic fixtures.
Independent student project. Not affiliated with or endorsed by the University of South Florida.