sWADAH is Malaysian-made Digital Institutional Repository (DIR) system that are easy to use and configure.


The development of this DIR begun in 2009 started from our iSYS engine. During this 10 years, we spent countless hours developing our own DIR to support all the newest technology made possible in the software development community. This is mainly because Eprints and DSpace are not so easy to use and complicated to install.

Developed entirely using PHP7/8, HTML5, Javascript and MariaDB, sWADAH codes were easy to understand even those who had minimal knowledge of programming. User can easily fork their own version of sWADAH and customize endlessly.


Main ingredients: PHP7/8, HTML, CSS, Javascript, MariaDB

Added recipes: jQuery, jQueryUI, fontawesome, tinyMCE, pdf.js, parsley, phpmailer, smalot/pdfparser, pdftotext


  1. Input using MARC record
  2. UTF8 Unicode
  3. Google Scholar metadata indexing
  4. Searcher API
  5. OAI-PMH v2.0 (oai_dc and uketd_dc)
  6. EZproxy mode.
  7. PDF word-by-word indexer
  8. White-listed IP support
  9. Guest PDF support
  10. Duplicate Finder Tool
  11. Easy to rebrand, backup, restore, configure
  12. Admin/User account portal
  13. Mobile app
  14. User self deposit with submission-approval and email notifications subsystem.
  15. Reporting tools for various aspect of system administration and usage.
  16. Gzip compression for faster loading time.

Installation Note

Follow this instructions (localhost environment) or watch this installation video on Centos Linux (in Bahasa Malaysia) or if you use Windows PC or server, download this (also in Bahasa Malaysia) instead.

  1. sWADAH may require this php add-ons:
    php-common, php-mysqlnd, php-gd, php-xml, php-mbstring, php-json, php-zip, php-cli

  2. Download installation files of sWADAH sWADAH_<build>_files_install.zip and its database sWADAH_<build>_database_install.sql.zip

  3. Create new database using your method of choice (eg. phpMyAdmin, mysqldump) and import the sWADAH_<build>_database_install.sql (you will need to extract the original zip file) into the database you have created.

  4. Next, extract sWADAH_<build>_files_install.zip into your web server working directory (eg. Centos: /var/www/html or Xampp: C:/xampp/htdocs/)

    Please also make sure the sWADAH directory is Apache writable. Sometimes SELinux is the culprit when one cannot upload their item into sWADAH (if you install on a Linux server). (Reference: https://blog.lysender.com/2015/07/centos-7-selinux-php-apache-cannot-writeaccess-file-no-matter-what/ or https://www.svnlabs.com/blogs/centos-7-selinux-apache-php-writeaccess-permission/).

    Directory that needs read/write access: /files

  5. Next, you will need to setup config.php inside the extracted web server directory above. Follow the documentation inside the file to configure your database, upload directories and many other settings. Please make sure all the settings are correct corresponding with your directory and database settings.

  6. To check if your installation is successful, try accessing index.php (eg. http://localhost/swadah/index.php if extracted in swadah directory in the web server)

  7. If your configuration succeed, you will see this screen:

Post installation procedure:

  1. Default login password for admin is pustaka (for build 2021X onwards). You’ll need to change this password as soon as possible.

  2. Newer version of sWADAH (beginning 2020X) require Composer (link here) to be installed in order for some components to work.

  3. After installing composer, you have to use command prompt (cmd) and navigate to your sWADAH directory and run composer update (example as below screenshot):

Upgrading Note

Upgrading is easy. You will need to download (sWADAH_<build>_files_update.zip) and its database (sWADAH_<build>_database_update.sql –if available)

Make multiple backup of your original sWADAH directory and it database (just in case)

Then extract the zip file to overwrite contents on your installation directory. If the database_update file is available, simply import the script using phpmyadmin or any mariadb/mysql database management software.

Please take note that config.php will be overwritten. Please make use of config.user.php (more on config.php and config.user.php below)

Understanding config.php

config.php is central file for accessing and editing sWADAH configurations. Click here to view documentation of config.php file or view this explanation video on YouTube (Bahasa Melayu).

As of sWADAH 2021X and all future version, config.php contains comprehensive instructions on how each settings works.

Understanding config.user.php

You may create config.user.php that will exist alongside with config.php. After creating the file, you will need to uncomment

include (‘config.user.php’) in config.php file

in order for sWADAH to fetch it configuration properties from the file.

You may assign your own values (all attributes and initial values can be refer back in config.php) so that when you are upgrading sWADAH, your configuration will remain. If you do not have this file, you have to start over. So the existence of config.user.php is to facilitate easy upgrading if ever config.php will change in the future releases. All values assigned in config.user.php will overwrite the one in config.php

For more information, you might want to see this explanation video on YouTube.

Download Releases

Click here to view up-to-date releases.

Contact Us

If you requires additional helps or need information regarding the installation of sWADAH, contact us at asyrani@upsi.edu.my