Explore the App »
Report Bug
·
Request Feature
LAFZ is an open-source web application designed to help users learn the core vocabulary of the Quran in an engaging, interactive, and structured manner. By focusing on high-frequency words, unique roots, and their various forms, LAFZ provides a guided journey to unlock a deeper connection with every verse.
The project is built with a modern tech stack and a clean, card-based UI to make learning both effective and enjoyable.
- Interactive Learning Paths: Guided chapters for high-frequency words, unique roots, and word forms.
- Progress Tracking: Mark words as 'learned' and track your progress through chapters and categories.
- Review Zone: A Spaced Repetition System (SRS) to help you review words at the perfect time to maximize retention.
- Multilingual Definitions: Access definitions and examples in English, Urdu, and Hinglish for each word.
- Search Functionality: Instantly search for any word across the entire vocabulary.
- Responsive Design: A beautiful and functional experience on both desktop and mobile devices.
- Light & Dark Themes: Switch between themes for your reading comfort.
- Open Source: Built by the community, for the community.
LAFZ is built with a modern, type-safe, and performant technology stack:
- Next.js - React Framework
- React - UI Library
- TypeScript - Type-Safe JavaScript
- Tailwind CSS - Utility-First CSS Framework
- ShadCN UI - Re-usable components
- Lucide React - Icon Library
To get a local copy up and running, follow these simple steps.
You need to have Node.js and npm (or yarn/pnpm) installed on your machine.
- Clone the repo
git clone [https://github.com/muneebwanee/lafz.git](https://github.com/muneebwanee/lafz.git)
- Navigate to the project directory
cd lafz - Install NPM packages
npm install
- Run the development server
npm run dev
- Open
http://localhost:3000with your browser to see the result.
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Don't forget to give the project a star! Thanks again!
You can also contribute by:
- Suggesting new features.
- Reporting any bugs you find.
- Helping to improve the word data, meanings, and examples.
Distributed under the MIT License. See LICENSE for more information.