Read and listen to The Noble Quran from your browser
Find a file
0x1eef 4386ba7e58
Some checks failed
The Quran / ci (push) Has been cancelled
docs: update
2024-11-17 05:13:31 -03:00
.bundle Update .bundle/config 2024-02-01 06:41:18 -03:00
.github Fix CI 2024-08-20 19:20:41 -03:00
bin Fix bin/setup on Linux 2024-08-27 10:15:03 -03:00
etc Fix CI 2024-09-16 19:39:07 -03:00
nanoc Update AnonymousFilter 2024-10-02 00:00:15 -03:00
packages Revisit the loader implementation (again) 2024-10-02 06:44:54 -03:00
rake/tasks Add favicon.rake (+ regen favicons) 2024-10-27 13:58:13 -03:00
share/al-quran.reflectslight.io Apply media query from a height of $breakpoint-md 2024-11-16 18:40:29 -03:00
src Apply media query from a height of $breakpoint-md 2024-11-16 18:40:29 -03:00
.editorconfig Update .editorconfig 2024-10-13 03:42:36 -03:00
.gitignore Add source/ to gitignore 2024-08-27 20:26:20 -03:00
.projectile Add Quran.locales 2024-05-15 21:51:04 -03:00
Gemfile Optimize inline of postman.css 2024-09-21 14:23:58 -03:00
Gemfile.lock Run "bundle update" 2024-11-05 11:01:19 -03:00
nanoc.yaml.sample Devops (change audio URL) 2024-11-05 10:57:31 -03:00
package-lock.json Fix (most) TypeScript errors 2024-08-31 00:29:19 -03:00
package.json Fix (most) TypeScript errors 2024-08-31 00:29:19 -03:00
Rakefile.rb Add favicon.rake (+ regen favicons) 2024-10-27 13:58:13 -03:00
README.md docs: update 2024-11-17 05:13:31 -03:00
Rules Optimize inline of postman.css 2024-09-21 14:23:58 -03:00

الْحَمْدُ لِلَّهِ رَبِّ الْعَالَمِينَ

About

This repository contains the source code of al-quran.reflectslight.io - a static website for reading (and listening to) The Noble Quran. After the website is built, the build directory consists of HTML, CSS, JavaScript and other static assets that can be hosted by a web server such as nginx, apache, et cetera.

Development

Requirements

The following languages and tools have to be installed to build the website from source:

  • Ruby 3.2 (or later)
  • NodeJS v18.15 (or later)
  • tidy-html5

Optional

The following tools are used during the generation of the website's favicons. The favicons generally do not change and unless you're working with the favicons directly you won't need to install these tools:

Examples

# Clone repository
git clone https://github.com/ReflectsLight/al-quran.reflectslight.io
cd al-quran.reflectslight.io

# Setup build environment
bin/setup

# List all tasks
bundle exec rake -T

# Build website (dev build)
bundle exec rake nanoc:build

# Build website (production build)
bundle exec rake nanoc:build[production]

# Start web server
bundle exec rake server

Configuration

server.base_url
If you plan to host the website on your own domain you should update nanoc.yaml first. In certain places links will reference https://al-quran.reflectslight.io instead of using a relative path. For example /src/sitemap.xml.erb is one such place. Those links can be updated to your own domain by changing the server.base_url field in nanoc.yaml before running bundle exec rake nanoc:build.

audio.base_url
audio.base_url controls what web server serves audio content. The default works out of the box. The URL for an audio file is resolved by joining audio.base_url and /<surahid>/<ayahid>.mp3. The audio.base_url option makes it relatively easy to change the reciter at build time, before deploying the website.

The https://al-quran-audio.reflectslight.io endpoint provides the following recitations:

Due to their overall size the audio files are the only files not kept in this repository. The audio files are hosted by https://al-quran-audio.reflectslight.io instead.

Credit

Translations

  • English (The Clear Quran) by Dr. Mustafa Khattab
  • Farsi by Hussain Ansarian

Recitations

  • Mishari bin Rashed Alafasy
  • Ahmad bin Ali Al-Ajmi
  • Sahl Yassin
  • Hani ar-Rifai

Misc

See also

Sources

License

The "source code" is released under the terms of the GPL
See LICENSE for details