No description
Find a file
2024-06-08 08:05:56 -03:00
.bundle Update .bundle/config 2024-02-01 06:41:18 -03:00
.github Try to fix CI 2024-05-20 00:05:32 -03:00
bin Depend on rubygems.org for server.rb 2024-05-02 08:27:11 -03:00
documentation Add translatedBy to surahs.json 2024-05-19 20:22:14 -03:00
nanoc Add server.base_url, audio.base_url 2024-06-02 03:11:48 -03:00
packages Update postman/README.md 2024-05-24 14:45:36 -03:00
rake/tasks s|with_unbundled_env|with_original_env|g 2024-05-25 00:18:23 -03:00
src Update images/og/15.png 2024-06-07 23:45:25 -03:00
submodules Update submodules/surah-name-glyphs 2024-06-08 08:05:56 -03:00
.editorconfig Update .editorconfig 2024-05-26 16:54:30 -03:00
.eslintrc.js Fix eslint 2024-04-30 01:05:48 -03:00
.gitignore Populate surah via info.json 2024-05-14 23:09:31 -03:00
.gitmodules Add Farsi support 2024-05-19 16:51:37 -03:00
.prettierignore eslint & prettier setup 2022-11-11 16:09:33 -03:00
.prettierrc Add Farsi support 2024-05-19 16:51:37 -03:00
.projectile Add Quran.locales 2024-05-15 21:51:04 -03:00
.rubocop.yml Replace single quotes with double quotes 2024-05-26 02:56:50 -03:00
Gemfile Add 'revision' meta tag 2024-05-25 00:53:15 -03:00
Gemfile.lock Add 'revision' meta tag 2024-05-25 00:53:15 -03:00
LICENSE License = GPL 2023-03-11 11:42:30 -03:00
nanoc.yaml Add server.base_url, audio.base_url 2024-06-02 03:11:48 -03:00
package-lock.json Add packages/typescript/Quran/ 2024-04-30 09:43:30 -03:00
package.json Add esbuild-loader, upgrade nanoc-webpack.rb 2024-04-25 20:36:34 -03:00
Rakefile.rb Update Rakefile.rb 2024-05-25 00:22:12 -03:00
README.md Update docs 2024-06-08 08:05:27 -03:00
Rules Determine Timer.tsx duration from MP3, otherwise default on fallback 2024-06-07 15:10:57 -03:00
tsconfig.json Drop 'allowJs' from tsconfig.json 2024-05-02 10:30:45 -03:00
VERSION v0.8.5 2024-06-07 21:11:26 -03:00
webpack.common.js Add esbuild-loader, upgrade nanoc-webpack.rb 2024-04-25 20:36:34 -03:00
webpack.development.js Add per-env webpack configuration files 2024-02-18 09:26:04 -03:00
webpack.production.js Add esbuild-loader, upgrade nanoc-webpack.rb 2024-04-25 20:36:34 -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, etc.

Requirements

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

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

Please note that the audio files are hosted by https://al-quran.reflectslight.io, and due to their overall size they are only files not kept in this repository.

Development

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

# Setup build environment
bin/setup

# List all tasks
rake -T

# Build website (dev build)
rake nanoc:build

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

# Start web server
rake server

Configuration

server.base_url

If you plan to host the website on your own domain you might want to 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 rake nanoc:build.

audio.base_url

audio.base_url controls what web server serves audio content. The default (https://al-quran.reflectslight.io/audio/alafasy) 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.reflectslight.io web server provides the following recitations:

Thanks

Alhamdulillah

  • Thanks to the graphic artists:

  • Thanks to the translators:

    • English (The Clear Quran) by Dr. Mustafa Khattab
    • Farsi by Hussain Ansarian
  • Thanks to the reciters:

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

License

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