# nuxt-prawo-jazdy ## Required The [db-prawo-jazdy](https://git.mandarynki.eu/netman/db-prawo-jazdy) project is designed for this one in mind, so use it in conjunction with this - visit it for more details ^^ Above is kind of outdated, project moved from PostgreSQL to SQLite - I included a `database.db` file in the `db/` folder, although it has older dataset of questions from the Ministry - foreshadowing... You also need the exam media files from the (Ministry of Infrasture)[https://www.gov.pl/web/infrastruktura/prawo-jazdy] - the latest files should be there The newest at the moment of me writing this (December 16th 2025) are the (visualisations for questions from November 2025)[https://www.gov.pl/pliki/mi/pytania_egzaminacyjne_na_prawo_jazdy_11_2025.zip] # To-do: - [x] re-forge database structure (good for now) - [x] choose category (good for now) - [x] come up with how to show results appropriately - [x] better answer click recognition - [x] beautify website (good for now) - [x] Fixed? Needs testing, but should be fine question-mark? - fix pinia middleware between pages, MAJOR ISSUE - finishing exam sometimes redirects to homepage instead of results - [x] question timers - [x] exam (& results?) warning leave message on exit and timer end (and definitely on refresh) - [x] add keybinds: - S - start - D - nast.pyt - X - koniec egzaminu (na pewno chcesz zakonczyc egzamin?) - T - Tak - N - Nie - A - A - B - B - C - C - [ ] i18n - pl, en, de, ua (not all questions are available in ua, api handle) - [ ] UI i18n - [x] pl - [x] en - [ ] de - [ ] ua - [x] db: examstore add language field, api handle languages (questions lang) - [ ] clean up js code in exam.vue and result.vue (currently a little bit of a mess) ## Some information about the project My intention is, to share access to test exams free of charge, you don't have to pay me - although you can, I greatly appreciate if you donate! I'm planning to host this project publicly and to put non-invasive ads if it gains enough traction All data used by this software is public information by definition provided in the Polish Constitution - [article 61.](https://www.sejm.gov.pl/prawo/konst/polski/kon1.htm), and can be acquired by either checking above links on the gov website, or by writing to the Ministry [(if something happened to be missing)](placeholder_for_post_about_missing_points_column) ==> (blog post to write in the future) This project is a website mimicking an official driver's license theoritical exam (for all license categories provided by the Ministry: A, A1, A2, AM, B, B1, C, C1, D, D1, T, PT) with a seperate media http server (not included here), connected using drizzle ORM to a SQLite database ## Setup This project utilizes `pnpm`, thus it is recommended ```bash pnpm install ``` Check out `.env.example`, mainly CDN_URL for media http url As of Dec. 16 2025 a test database is included at `./db/database.db` ### Development Server Start the development server on `http://localhost:3000`: ```bash pnpm run dev ``` ### Production Build the application for production: ```bash pnpm build ``` Locally preview production build: ```bash pnpm preview ``` Check out the [Nuxt documentation](https://nuxt.com/docs) for more information. ### [Licensing](./LICENSE) (AGPL-3.0-only) ``` nuxt-prawo-jazdy: Polish driver's license theoritical exam nuxt web app Copyright (C) 2025 NetMan This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, AGPL-3.0-only. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see . ```