Homedocs is a simple personal document manager. You can conveniently store your files by classifying them with tags for easy retrieval in the future.
- PHP v8.4
- composer
- 'pdo_sqlite' & 'mbstring' php extensions
- enough disk space for storing documents
The project currently consists of two parts:
phpslim-api/ : Back-end (server API, also includes the latest compiled Quasar web interface/front-end). If you only want to install/use Homedocs, you can copy/use just this part.
quasar-frontend/: Front-end (contains the source code of the Quasar web interface). You won’t need this if you only want to use Homedocs (without developing or making changes).
Install the dependencies (in the phpslim-api/ path).
composer installExecute the SQLite database creation/update script.
php phpslim-api/tools/setup.phpCheck proper permissions: The web server process must have read and write permissions for files, and read, write, and execute permissions for directories.
Database file
phpslim-api/data/homedocs3.sqlite3
Storage paths
phpslim-api/data/storage/*.*
Debug files
phpslim-api/data/logs/*.*The system should work by default, but if you need to modify any configuration, the settings file is located at:
phpslim-api/config/settings.phpThe base path for the web server should be: phpslim-api/public/
Customize the web server settings according to the PHP Slim documentation:
https://www.slimframework.com/docs/v4/start/web-servers.html
WARNING: Before making any changes, make a backup of the files and database (located at phpslim-api/data/).
The storage data is retained/shared from previous versions (1.x & 2.x), but the database structure has changed. You will need to install a clean database and run a small SQLite script from the command line:
php phpslim-api/tools/setup.php
cd phpslim-api/data
sqlite3 ./homedocs3.sqlite3 < ../tools/migrate-from-v2.sqlWARNING: Before making any changes, make a backup of the files and database (located at phpslim-api/data/).
The storage data is retained/shared from the previous version (1.0), but the database structure has changed. You will need to run a small SQLite script from the command line (located under the phpslim-api/data/ path, where old sqlite3 database is stored):
cat ../tools/migrate-from-v1.sql | sqlite3 ./homedocs2.sqlite3
Once migrated, run the update script to apply the SQL version changes:
php phpslim-api/tools/setup.phpIt's highly recommended to make periodic backups. All data (excluding source code), including the SQLite database and file storage, is stored under the phpslim-api/data/ path.
You can create or update an account from the command line using the PHP script:
php phpslim-api/tools/set-credential.php --email myuser@myserver.net --password mysecretIf the account already exists, it will be overwritten with the provided data.
It is possible to generate mock example data for a user with specific credentials using the following command line:
php phpslim-api/tools/generate-demo-data.php --count 512 --email johndoe@localhost --password secretInstall the dependencies:
cd phpslim-api
composer installStart the local PHP (backend/API) server, listening on http://127.0.0.1:8081:
composer serveInstall the dependencies:
cd quasar-frontend
npm iStart the local front-end (Quasar web app interface), listening on http://127.0.0.1:8080:
quasar devBuild the Quasar web app release (in /phpslim-api/public):
quasar buid- Docker
- Document API
- Android app









