Muezzin is a web application. Generate image to provide accurate prayer times. Project is test mode
369
As a developer, here’s some spatial text to describe the application "Muezzin" that I’ve created:
Muezzin is a web application developed using Spring Boot 3 and Springdoc Swagger for frontend and mobile developers. The main purpose of this application is to generate the daily prayer times of Islam in the form of an image.
To accurately calculate the prayer times based on the user’s location, I have utilized the GeoIP2 library. It helps in generating prayer times by determining the user’s location using their IP address. Additionally, the Adhan library has been integrated to generate the precise prayer times.
To enhance the user experience, the application generates QR codes for prayer times using the Zxing library. This allows users to easily share the prayer times with others.
For better scalability and load balancing, the application uses the Netflix Eureka client. By default, the load balancer feature is disabled, but it can be enabled if desired.
To support multiple languages, the application incorporates i18n (Internationalization). This allows users to switch between different languages to view the prayer times according to their preference.
For convenient deployment, the application leverages Google Jib and Dockerfile. This enables the creation of containerized images that can be easily deployed in Kubernetes.
Overall, Muezzin is a comprehensive application encompassing various technologies and libraries to provide accurate and user-friendly daily prayer times of Islam. By utilizing containerization and efficient deployment techniques, the application is designed to be easily deployed on any platform.
###Machine
git clone https://github.com/Sulaymon-Dev20/muezzin-server.git
cd muezzin-server
mvn clean install
mvn spring-boot:run
http://localhost:5677
###Docker
docker pull sulaymonyahyo/muezzin-server:latest
2.Once the image has been downloaded, you can start the Muezzin Server container by executing the following command:
docker run -p 5677:5677 sulaymonyahyo/muezzin-server:latest
#Configuration
If you want to use Netflix Eureka client for load balancing, you should change the eureka.client.enabled property to true in the application.yml file. By default, it is set to false. This will enable the Eureka client to register with the Eureka server for service discovery and load balancing.
To use Zipkin for distributed tracing, you should set the management.zipkin.tracing.endpoint property to the URL of your Zipkin server. Additionally, set tracing.enabled to true to enable tracing in your application. By default, it is set to false.
If you don't want to use Swagger documentation, you can disable it by setting springdoc.swagger-ui.enabled to false in the application.yml file. This will disable the Swagger UI endpoint and prevent the generation of Swagger documentation.
Please note that these configuration options may vary depending on your specific Spring Boot version and setup. Make sure to refer to the official documentation or relevant resources for accurate and up-to-date configuration details.
If you have any further questions or need assistance with specific configuration options, feel free to ask.
#Usage

#License
name: Apache License Version 2.0
url: https://www.apache.org/licenses/LICENSE-2.0
name: GeoLite2 License
url: https://www.maxmind.com/en/geolite2/eula
#Contact
To reach out to me, you can contact me via email at [email protected] or [email protected].
You can also visit my website at sulaymonyahyo.com for more information or to get in touch.
Source code: https://github.com/Sulaymon-Dev20/muezzin-server
Content type
Image
Digest
sha256:b57ea6e4a…
Size
334 MB
Last updated
over 2 years ago
docker pull sulaymonyahyo/muezzin-server