Solatku is a web application designed to help Malaysian users know the prayer times of the day. Users can choose their location, and the app will fetch the accurate prayer times based on JAKIM's data using api-waktusolat API.
The motivation behind creating Solatku was to improve my Angular skills, learn how to use Taiga UI, understand how to dockerize an Angular app, and learn how to enhance performance by using Nginx and Gzip for handling static files.
- Accurate prayer times based on JAKIM's data
- Location-based prayer time fetching
- User-friendly & responsive interface using Taiga UI.
- Node.js and npm
- Angular CLI
- Docker (for running the app using Docker)
- Git
Git clone the repository:
git clone https://github.com/farithadnan/solatku.git
Open the project directory using your IDE, and then run the command below to install dependencies:
npm install
Next, start the development server by running these command:
npm start
To run the app using multi-stage Docker, simply run either the update.bat
or update.sh
script, you can find these script in the root directory of the project's folder.
On Windows:
update.bat
On Linux/Mac:
./update.sh
Ensure Docker is installed and running on your machine before executing these scripts.
This project is licensed under the MIT License - see the LICENSE file for details.
Article, API and resources that help me throughout the development:
- api-waktusolat - is used for fetching prayer times data.
- Taiga Ui - is used as the UI framework for the app.
- Nginx Cache for Dockerized Angular App.
- Improve performance with Gzip.
- How to dockerize Angular's app.
- Multi-stage Docker.
- Adding PWA to Angular app.
- How to deploy an Angular app with Vercel.