Contactual is a lightweight contact book manager that centralizes all your contacts into a simple web interface. Users can register/login, add contacts, edit or delete them, and quickly search through saved entries. Contacts are stored per-user, so each account only sees their own contact list.
- Login / Register landing page
- Users cannot log in without a registered account
- Add contacts
- Edit / delete contacts
- Search contacts
- Contacts are stored per unique user account
- Frontend: HTML, JavaScript, CSS
- Backend/API: PHP (REST-style API endpoints)
- Database: MySQL
- Hosting: DigitalOcean
poosd_small_project/
├── api/
│ ├── loginContact.php
│ ├── registerContact.php
│ ├── searchContact.php
│ ├── addContact.php
│ ├── deleteContract.php
│ └── editContact.php
│
├── css/
│ ├── start_style.css
│ └── styles.css
│
├── images/
│ └── contactual-logo.png
│
├── js/
│ ├── api.js
│ ├── auth.js
│ ├── config.js
│ ├── contacts.js
│ └── md5.js
│
├── .gitignore
├── README.md
├── contact.html
└── index.html
No local commands are required to use the app, simply open the deployed website URL in your browser.
- Open the site
- Register an account
- Log in
- Add, edit, delete, or search contacts
- A web server capable of running PHP (e.g., Apache or Nginx)
- PHP installed (version depends on your environment/server)
- MySQL database
- Ability to host the static frontend files (
index.html,contact.html, pluscss/,js/,images/)
The API requires database credentials via a db_config.php file (not committed to the repo). Create a db_config.php with your own database credentials in the location expected by the API code.
Note: The repo references 'db_config.php' for DB credentials, so you must provide your own before the API endpoints can connect to MySQL.
- Place the project in your PHP server’s web root (or configure a vhost/site to point at it).
- Ensure MySQL is running and your schema/tables are created (per your project’s DB setup).
- Add your
config.phpfile with valid credentials. - Open
index.htmlin the browser via your local server URL (not as a raw file path).
API endpoints live in the api/ directory:
loginContact.phpregisterContact.phpsearchContact.phpaddContact.phpdeleteContract.phpeditContact.php
API endpoints were tested using SwaggerHub Studio.
- Anna Russell — Project Manager
- Horacio Sierra Perez — Frontend
- Karina Ann — Frontend
- Sydney Lalah — Frontend
- Joshua Pache — API
- Zakaria Khan — API
- Annie Tsai — Database
This project is licensed under the MIT License. See LICENSE for details.