Testownik is a lightweight, high-performance desktop application designed to optimize the learning and memorization process. Moving beyond traditional static note-reading, the application employs active recall and spaced repetition principles. Users can import their own datasets or create tests directly within the application, ensuring that incorrect answers are methodically repeated until mastery is achieved.
- Download & Installation
- Installation Troubleshooting
- Application Workflow
- Detailed Features
- For Developers
The application is distributed as pre-compiled standalone executables for all major operating systems. Navigate to the Releases page and download the appropriate package for your architecture:
- Windows: Download the
.exeinstaller. - macOS: Download the
.dmgimage (Universal build for both Intel and Apple Silicon is available; select the corresponding architecture). - Linux: Download the
.AppImageor.debpackage.
Note: Additional metadata files generated in the release folder (such as .yml or .blockmap) are utilized internally by the application's auto-updater mechanism and do not need to be downloaded manually.
Due to strict modern operating system security protocols, unsigned applications distributed outside of official app stores may trigger warnings. Please follow the instructions below to bypass these security mechanisms safely.
Because this application does not currently possess a paid EV (Extended Validation) code signing certificate, Windows Defender SmartScreen may interrupt the initial launch, displaying a "Windows protected your PC" dialog.
To proceed with the installation:
- Click on More info within the dialog window.
- A new button labeled Run anyway will appear at the bottom.
- Click Run anyway to authorize the application. The installer will then execute silently and launch the application.
macOS implements a strict security feature known as Gatekeeper. When an application without an Apple Developer certificate is downloaded via a web browser, macOS attaches a quarantine extended attribute (com.apple.quarantine) to the file. Attempting to launch the application may result in an error stating that the application is damaged and can't be opened, prompting you to move it to the Trash.
To remove the quarantine attribute and run the application:
- Open the downloaded
.dmgfile and dragTestownik.appinto your Applications folder. - Open the Terminal application (accessible via Spotlight Search).
- Execute the following command to strip the quarantine attribute:
xattr -cr /Applications/Testownik.app
- You may now launch the application normally from your Applications directory. The error will not appear again.
- Database Creation or Import: Utilize the built-in Creator module to generate a custom database of questions and answers. Alternatively, import an existing
.ziparchive containing image-based questions and a corresponding.jsonfile containing the correct answer keys. - Active Testing Phase: The application presents the questions sequentially, recording the accuracy of your responses.
- Algorithmic Repetition: Incorrectly answered questions are not discarded. The system queues them for subsequent review, requiring multiple consecutive correct answers to mark the question as successfully learned.
- Persistent State Management: Your learning progress is continuously auto-saved to the local disk. You may terminate the application at any time and seamlessly resume your session upon relaunching.
- Integrated Test Creator: A comprehensive graphical interface for creating, editing, and managing custom question databases directly within the application environment.
- Intelligent Auto-Updater: A robust background service monitors the repository for new releases. On Windows, updates are downloaded and installed entirely in the background, utilizing custom bypass logic to prevent deployment race conditions. On macOS, the application intelligently disables background execution to comply with Gatekeeper policies, instead surfacing a non-intrusive UI notification that directs the user to the latest
.dmgdownload. - Custom Question Banks: Complete flexibility in defining the scope of your learning material.
- Real-Time Auto-Saving: All session data, including current progress and repetition queues, is serialized and saved locally to prevent data loss.
- Keyboard-Centric Navigation: The entire testing interface is fully navigable via keyboard shortcuts, drastically increasing the speed and efficiency of the learning session.
- Theming & Accessibility: Full support for both Dark and Light modes, ensuring optimal contrast and readability across different environments.
- Dynamic Zoom Interface: Leverage
Ctrl++/-(orCmdon macOS) to dynamically scale the application interface, accommodating various screen resolutions and visual preferences.
This project is built utilizing a modern, high-performance desktop application stack.
Technology Stack:
- Frontend: React 19, TypeScript, Tailwind CSS, Vite.
- Backend/Container: Electron.
- Package Management: npm.
- Clone the repository to your local machine:
git clone https://github.com/ffxwrld/testownik.git
- Navigate into the project directory:
cd testownik - Install the required Node.js dependencies:
npm install
- Initialize the local development server with Hot Module Replacement (HMR):
npm run dev
To compile the source code and generate production-ready standalone executables, execute the following npm scripts. The output artifacts will be placed in the release/ directory.
npm run build:mac: Generates.dmgand.ziparchives for macOS (includes configurations for both Intel x64 and Apple Silicon ARM64 architectures).npm run build:win: Generates the.exeNSIS installer for Windows x64.npm run build:linux: Generates.AppImageand.debpackages for Linux x64.npm run build:all: Sequentially compiles the application for all supported operating systems.



