Thanks to visit codestin.com
Credit goes to github.com

Skip to content

A cross-platform desktop application for building and running highly customizable multiple-choice tests, featuring a rich editor, dynamic question types, and complete offline functionality powered by Next.js and Tauri.

Zawalid/QCMaker

Repository files navigation


📝 QCMaker

A modern, offline-first desktop application for building, running, and managing highly customizable multiple-choice tests.


Status Next.js TypeScript Tauri Tailwind CSS Zustand

📌 Table of Contents


✨ Core Features

Feature Description
🖥️ Cross-Platform Desktop App Built with Tauri, allowing the entire web application to be packaged and run as a lightweight, native desktop experience on any OS.
🛠️ Intuitive Test Builder A guided, multi-step interface for creating tests, defining settings, adding questions, and reviewing the final product before saving.
✍️ Rich Content Editing Utilizes a Tiptap-based WYSIWYG editor, allowing for formatted questions and explanations with lists, styling, and embedded media.
⚙️ Advanced Test Settings Fine-tune tests with options for time limits, pass percentages, weighted questions, and randomized shuffling of questions and answers.
🔄 Interactive Drag & Drop Easily reorder questions and answers using a smooth, intuitive drag-and-drop interface powered by Dnd-Kit.
🏃 Dedicated Test-Taking UI A clean, focused environment for test-takers, complete with a countdown timer, question navigation, and instant results upon submission.
💾 Offline First & File-Based Operates entirely offline. Tests are created, saved to (.qcm files), and opened from the user's local filesystem for full data control.

🧰 Technology Stack

This project uses a modern, performant, and cross-platform technology stack.

Category Technologies & Services
Framework & UI Next.js Next.js 15 (App Router) & TypeScript TypeScript for a modern, type-safe architecture.
State Management Zustand Zustand for managing complex client-side state, with middleware for persisting test progress to IndexedDB.
Styling & Components Tailwind CSS Tailwind CSS and Shadcn/ui Shadcn/ui for a beautiful and accessible component library.
Desktop App Tauri Tauri for packaging the Next.js application into a performant, cross-platform desktop app with native filesystem access.
Form Handling React Hook Form React Hook Form for managing complex form state, paired with Zod Zod for robust schema validation.
Content Editing Tiptap Tiptap for providing a rich, WYSIWYG text editing experience for questions and descriptions.

🌟 Future Features

This project has a clear roadmap for expanding its capabilities from an offline tool to a full-featured, collaborative platform.

Feature Area Planned Enhancements
☁️ Cloud & Database Sync Implement a backend (e.g., Supabase, Firebase) and database to enable cloud synchronization of tests across devices.
👥 User Accounts & Roles Introduce user authentication with distinct roles (e.g., Professor, Student) to manage access and permissions.
📈 History & Analytics Develop a history feature for users to track their past test results and performance over time.
🤖 AI-Powered Generation Integrate AI to auto-generate questions based on a topic or document, streamlining the test creation process.
🔗 Public Sharing & Collab Allow creators to share tests via a public link and enable multiple users to collaborate on building a single test.

📸 Screenshots

(Note: Replace these placeholder links with actual paths to your screenshots in the repository.)

Test Builder View
The multi-step test builder, showing the question creation and editing interface.


Test Runner View
The focused test-taking environment with a timer and clear navigation.


📨 Get In Touch

Let's connect! I'm always open to discussing new projects, creative ideas, or opportunities to be part of an amazing team.

Walid Zakan

About

A cross-platform desktop application for building and running highly customizable multiple-choice tests, featuring a rich editor, dynamic question types, and complete offline functionality powered by Next.js and Tauri.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages