2023-10-08 00:32:27 +02:00
|
|
|
## About
|
2023-03-08 17:06:10 +01:00
|
|
|
|
2024-05-20 04:35:43 +02:00
|
|
|
This repository contains the source code of
|
2024-05-26 21:48:08 +02:00
|
|
|
[al-quran.reflectslight.io](https://al-quran.reflectslight.io) -
|
2024-05-20 04:35:43 +02:00
|
|
|
a static website for reading (and listening to)
|
|
|
|
The Noble Quran. After the website is built,
|
|
|
|
the build directory consists of HTML, CSS, JavaScript
|
2024-05-26 04:08:37 +02:00
|
|
|
and other static assets that can be hosted by
|
2024-08-13 23:31:05 +02:00
|
|
|
a web server such as nginx, apache, et cetera.
|
2024-05-20 04:35:43 +02:00
|
|
|
|
2024-10-18 06:39:08 +02:00
|
|
|
## Development
|
|
|
|
|
|
|
|
### Requirements
|
2023-03-11 15:42:30 +01:00
|
|
|
|
2024-05-20 04:35:43 +02:00
|
|
|
The following languages and tools have to be
|
|
|
|
installed to build the website from source:
|
2023-10-08 00:07:34 +02:00
|
|
|
|
2024-06-21 00:03:47 +02:00
|
|
|
* Ruby 3.2 (or later)
|
2024-05-02 13:04:35 +02:00
|
|
|
* NodeJS v18.15 (or later)
|
|
|
|
* [tidy-html5](https://github.com/htacg/tidy-html5)
|
2023-03-13 17:13:58 +01:00
|
|
|
|
2024-10-27 03:50:17 +01:00
|
|
|
### 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:
|
|
|
|
|
2024-10-27 18:16:15 +01:00
|
|
|
* rsgv-convert via [libsvg2](https://gnome.pages.gitlab.gnome.org/librsvg/Rsvg-2.0/overview.html)
|
|
|
|
* convert via [ImageMagick](https://imagemagick.org/)
|
2024-10-27 03:50:17 +01:00
|
|
|
|
2024-10-18 06:39:08 +02:00
|
|
|
### Examples
|
2023-03-29 18:14:33 +02:00
|
|
|
|
2024-03-15 18:32:31 +01:00
|
|
|
# Clone repository
|
2024-06-19 15:20:04 +02:00
|
|
|
git clone https://github.com/ReflectsLight/al-quran.reflectslight.io
|
|
|
|
cd al-quran.reflectslight.io
|
2023-03-29 18:14:33 +02:00
|
|
|
|
2024-05-02 13:04:35 +02:00
|
|
|
# Setup build environment
|
|
|
|
bin/setup
|
2023-03-29 18:14:33 +02:00
|
|
|
|
2024-05-25 05:20:39 +02:00
|
|
|
# List all tasks
|
2024-08-21 03:18:58 +02:00
|
|
|
bundle exec rake -T
|
2024-05-25 05:20:39 +02:00
|
|
|
|
2024-06-08 05:59:03 +02:00
|
|
|
# Build website (dev build)
|
2024-08-21 03:18:58 +02:00
|
|
|
bundle exec rake nanoc:build
|
2023-03-29 18:14:33 +02:00
|
|
|
|
2024-06-08 05:59:03 +02:00
|
|
|
# Build website (production build)
|
2024-08-21 03:18:58 +02:00
|
|
|
bundle exec rake nanoc:build[production]
|
2024-06-08 05:59:03 +02:00
|
|
|
|
2024-03-15 18:32:31 +01:00
|
|
|
# Start web server
|
2024-08-21 03:18:58 +02:00
|
|
|
bundle exec rake server
|
2023-03-30 01:17:01 +02:00
|
|
|
|
2024-05-26 03:27:28 +02:00
|
|
|
## Configuration
|
|
|
|
|
2024-08-12 22:52:58 +02:00
|
|
|
* **server.base_url** <br>
|
|
|
|
If you plan to host the website on
|
|
|
|
your own domain you should update
|
|
|
|
[nanoc.yaml](nanoc.yaml.sample)
|
|
|
|
first. In certain places
|
|
|
|
links will reference
|
|
|
|
https://al-quran.reflectslight.io
|
|
|
|
instead of using a relative path.
|
|
|
|
For example
|
|
|
|
[/src/sitemap.xml.erb](/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](nanoc.yaml.sample)
|
2024-08-21 03:57:05 +02:00
|
|
|
before running `bundle exec rake nanoc:build`.
|
2024-08-12 22:52:58 +02:00
|
|
|
|
|
|
|
* **audio.base_url** <br>
|
|
|
|
`audio.base_url` controls what web server serves
|
2024-08-22 11:38:03 +02:00
|
|
|
audio content.
|
2024-08-28 01:26:02 +02:00
|
|
|
[The default](https://audio.al-quran.reflectslight.io/rifai)
|
2024-08-12 22:52:58 +02:00
|
|
|
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.
|
|
|
|
|
2024-08-28 01:26:02 +02:00
|
|
|
The https://audio.al-quran.reflectslight.io endpoint
|
2024-08-12 22:52:58 +02:00
|
|
|
provides the following recitations:
|
|
|
|
|
|
|
|
- Mishari bin Rashed Alafasy <br>
|
2024-08-28 01:26:02 +02:00
|
|
|
https://audio.al-quran.reflectslight.io/alafasy
|
2024-08-12 22:52:58 +02:00
|
|
|
- Ahmad bin Ali Al-Ajmi <br>
|
2024-08-28 01:26:02 +02:00
|
|
|
https://audio.al-quran.reflectslight.io/alajmi
|
2024-08-12 22:52:58 +02:00
|
|
|
- Sahl Yassin <br>
|
2024-08-28 01:26:02 +02:00
|
|
|
https://audio.al-quran.reflectslight.io/yassin
|
2024-08-22 11:38:03 +02:00
|
|
|
- Hani ar-Rifai <br>
|
2024-08-28 01:26:02 +02:00
|
|
|
https://audio.al-quran.reflectslight.io/rifai
|
2024-06-08 01:47:38 +02:00
|
|
|
|
2024-08-12 22:52:58 +02:00
|
|
|
**Note**<br>
|
2024-08-22 11:38:03 +02:00
|
|
|
Due to their overall size the audio files are the only
|
|
|
|
files **not** kept in this repository. The audio files
|
2024-08-28 01:26:02 +02:00
|
|
|
are hosted by https://audio.al-quran.reflectslight.io
|
2024-08-28 01:45:54 +02:00
|
|
|
instead.
|
2024-08-12 22:52:58 +02:00
|
|
|
|
2023-10-08 00:32:27 +02:00
|
|
|
## Thanks
|
2023-03-13 17:13:58 +01:00
|
|
|
|
2024-08-12 22:52:58 +02:00
|
|
|
الْحَمْدُ لِلَّهِ رَبِّ الْعَالَمِينَ
|
2023-07-10 04:34:38 +02:00
|
|
|
|
2024-05-20 01:22:14 +02:00
|
|
|
* Thanks to the graphic artists:
|
2024-03-15 18:32:31 +01:00
|
|
|
- [RefreshIcon](/src/js/components/Icon.tsx)
|
|
|
|
by
|
2024-05-02 13:07:33 +02:00
|
|
|
[Muhammad Haq](https://freeicons.io/profile/823)
|
2024-05-20 01:22:14 +02:00
|
|
|
* Thanks to the translators:
|
2024-03-15 18:32:31 +01:00
|
|
|
- English (The Clear Quran) by Dr. Mustafa Khattab
|
2024-05-20 04:35:43 +02:00
|
|
|
- Farsi by Hussain Ansarian
|
2024-06-08 01:47:38 +02:00
|
|
|
* Thanks to the reciters:
|
|
|
|
- Mishari bin Rashed Alafasy
|
|
|
|
- Ahmad bin Ali Al-Ajmi
|
|
|
|
- Sahl Yassin
|
2024-08-22 15:03:46 +02:00
|
|
|
- Hani ar-Rifai
|
2024-06-08 01:47:38 +02:00
|
|
|
|
2024-09-21 13:12:59 +02:00
|
|
|
## Sources
|
|
|
|
|
|
|
|
* [GitHub](https://github.com/ReflectsLight/al-quran.reflectslight.io)
|
2024-10-22 07:45:39 +02:00
|
|
|
* [GitLab](https://gitlab.com/ReflectsLight/al-quran.reflectslight.io)
|
2024-10-22 07:13:53 +02:00
|
|
|
* [brew.bsd.cafe/@ReflectsLight](https://brew.bsd.cafe/ReflectsLight/al-quran.reflectslight.io)
|
2024-09-21 13:12:59 +02:00
|
|
|
|
2024-03-15 18:32:31 +01:00
|
|
|
## License
|
|
|
|
|
2024-05-20 04:35:43 +02:00
|
|
|
The "source code" is released under the terms of the GPL <br>
|
2024-10-20 06:53:08 +02:00
|
|
|
See [LICENSE](./share/al-quran.reflectslight.io/LICENSE) for details
|