Business Client need Web Development

Contact person: Business Client

Phone:Show

Email:Show

Location: Abbotsford, Canada

Budget: Recommended by industry experts

Time to start: As soon as possible

Project description:
"Project: Authenticated Image Upload System (Map-Based Website)
Current State

Live website with Leaflet map and clustering

Images displayed per city

Folder structure exists:
uploads/Country/Province/City/

Frontend UI already built and working

No frontend redesign required

Goal

Allow users to upload images grouped by Country → Province/State → City, with secure storage, admin moderation, and automatic map integration.
Images are anonymous by default but become associated with a user profile once the user registers.

Core Requirements
1. User Registration & Login

Manual registration (email + password)

Google OAuth login option

One-time email verification (manual registration only)

Persistent login for returning users (sessions + optional “remember me”)

Secure password hashing (bcrypt/argon2)

2. Anonymous → Registered Upload Linking

Images uploaded before full registration do not display uploader information publicly

Each upload is internally tracked (session-based or temporary user identifier)

If the uploader later fully registers:

Previously uploaded images are linked to their account

Those images appear in the user’s personal image library

No public uploader info is shown unless the image is linked to a registered user

3. Upload Page (Protected)

Only logged-in & verified users can upload (anonymous uploads optional if simpler for MVP)

Upload form includes:

Country dropdown

Province/State dropdown (filtered by country)

City dropdown (no free-text input)

If city does not exist:

Automatically create it or

Submit for admin approval (developer to advise)

Support multiple image uploads

4. Image Upload & Security

Backend upload endpoint (e.g. POST /api/upload)

Validate:

Image type (JPG / PNG / WEBP)

Max file size (e.g. 20MB)

Rename files on upload (UUID)

Prevent malicious uploads, path traversal, executable files

Basic rate limiting / abuse prevention

5. Storage & Data

Images stored in:
uploads/Country/Province/City/

Database records include:

image_id

optional user_id (nullable until user registers)

country / province / city

filename / path

upload timestamp

moderation status (pending / approved / rejected)

6. Moderation (Admin)

All uploads default to pending

Admin-only page to:

View uploads

Approve or reject images

Only approved images appear publicly

7. Map & Profile Integration

Map pins load dynamically from database (no hardcoded pins)

City popups show thumbnails

If an image is linked to a registered user:

The uploader’s username appears in the bottom-right of the image view

Username is clickable and links to the user’s profile

User profile page displays:

Username

Their full image library

Technical Preferences

Backend: PHP preferred (open to Node.js / Python)

Database: MySQL / MariaDB

Clean, secure, well-documented code

MVP-focused (simple > over-engineered)

Deliverables

Manual + Google registration/login

Persistent login for returning users

Secure image upload system

Anonymous-to-registered image linking

Admin moderation page

Database schema + setup

Backend APIs for uploads, locations, profiles

Deployment instructions" (client-provided description)


Matched companies (4)

...

Chirag Solutions

Chirag Solutions is extending its services in website designing & development and software development. Our web and software development is committed… Read more

...

JanakiBhuvi Tech Labs Private Limited

Delivering Future-Ready Digital Solutions in Web Development, E-commerce, Logo Design, and Digital Marketing. We believe innovation is key to navigat… Read more

...

B2Bcert ISO consultants in Bangalore

B2Bcert is a globally recognized certification and consulting firm dedicated to helping businesses achieve international quality and compliance stand… Read more

...

Appeonix Creative Lab

At Appeonix Creative Lab, we are more than just an IT company—we are your growth partners. With a passion for innovation and excellence, we craft cus… Read more