Simple Customer Management Website

via Freelancer ·

Budget / Salary$250–750
TypeFreelance project
LocationRemote
Posted2 hours ago
# Simple Customer Management System

I’m looking for a freelancer to help develop a simple **Customer Management System** for a project. The system will have three user roles—**Customer, Staff, and Admin**—and should provide a clean, responsive, and easy-to-use web interface.

The project should use a lightweight and familiar technology stack:

- **Frontend:** HTML, CSS, and Vanilla JavaScript
- **Backend:** PHP
- **Database:** MySQL
- **Authentication:** PHP sessions with role-based access control
- **Reports:** PDF and CSV export

## Main Features

### 1. Registration and Login

- Public customer registration form
- Secure login and logout system
- Session-based authentication
- Password hashing
- Role-based access control
- Users should only access pages and features allowed for their role

### 2. Customer Dashboard

Customers should be able to:

- View their dashboard
- View and update their own profile information
- View their relevant customer information
- Submit a simple **“Contact Admin”** message
- Logout securely

### 3. Staff Dashboard

Staff members should be able to:

- Login securely
- View their dashboard
- View a list of registered customers
- Search or filter customers if practical
- Access customer information in **read-only mode**

Staff should not be able to modify or delete customer records unless specifically permitted.

### 4. Admin Dashboard

Administrators should have full management access, including:

- View all customers and users
- Add new customers
- Edit customer information
- Delete customer records
- View registered users
- Manage basic user roles
- View messages submitted through “Contact Admin”
- Generate basic **PDF and CSV reports**

## Responsive Design

The website should be **mobile-first and fully responsive**, working properly on:

- Mobile phones
- Tablets
- Laptops and desktops

The interface should be simple, clean, and easy to navigate.

## Database

The database should remain simple and easy to understand. A possible structure could include:

- `users` — login credentials and roles
- `customers` — customer information
- `staff` — staff information, if needed
- `contact_messages` — messages sent to administrators

Additional tables can be added where necessary, but the database should not be unnecessarily complicated.

## Code Quality and Security

Clean and understandable code is important.

Please include:

- Password hashing using PHP's secure password functions
- Prepared SQL statements to prevent SQL injection
- Basic server-side input validation
- Session and authorization checks
- Protection against unauthorized access to role-specific pages
- Clear folder and file organization
- Useful comments around important sections
- Basic error handling

## Suggested Project Structure

The exact structure can be proposed by the freelancer, but I would prefer something organized, for example:

`/admin`
`/staff`
`/customer`
`/assets`
`/config`
`/includes`
`/reports`
`/database`

Please explain your proposed folder structure before development begins.

## Timeline

The expected completion time is **7 days from acceptance**.

I would prefer the work to be divided into simple milestones:

**Milestone 1 — Frontend & Database**

- UI design
- Registration/login pages
- Database setup
- Basic responsive layout

**Milestone 2 — Backend & User Roles**

- Authentication
- Customer dashboard
- Staff dashboard
- Admin dashboard
- CRUD functionality

**Milestone 3 — Reports, Testing & Final Delivery**

- PDF/CSV reports
- Security checks
- Responsive testing
- Bug fixing
- Documentation
- Final walkthrough

## Final Deliverables

The freelancer should provide:

1. Complete source code
2. MySQL database/SQL dump ready for import
3. Short README containing installation and setup instructions
4. Responsive and functional website
5. PDF and CSV reporting functionality
6. Live demo link **or** recorded walkthrough showing the completed features
7. Any required configuration instructions

## When Applying

Please include:

- A short introduction
- Examples of similar **CRUD, PHP/MySQL, customer management, or role-based systems** you have developed
- Your proposed folder/project structure
- The security measures you will implement
- Your estimated timeline
- Your fixed-price quote
- How you would divide the work into milestones

The project is ready to start once I select a suitable freelancer. I’m mainly looking for someone who can deliver **clean, understandable, functional code rather than an unnecessarily complex system**.

Thank you for considering the project.
javascript node.js express js angularjs git typescript web development rest api
Apply on Freelancer →

Project sourced from Freelancer.com. Applications happen directly on the original platform — we never collect your data.