al-quran.reflectslight.io/README.md

114 lines
3.3 KiB
Markdown
Raw Normal View History

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
## 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:
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-03-15 18:32:31 +01:00
## Development
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
2024-05-02 13:04:35 +02:00
# Setup build environment
bin/setup
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
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
## 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
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)
* [GitLab](https://gitlab.com/0x1eef/al-quran.reflectslight.io)
* [brew.bsd.cafe/@0x1eef](https://brew.bsd.cafe/0x1eef/al-quran.reflectslight.io)
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-09-21 19:04:52 +02:00
See [LICENSE.txt](./share/al-quran.reflectslight.io/LICENSE.txt) for details