Back to blocks

Mr. Fanny 应用开发指南

4.0
en技术开发移动应用HTML开发多语言支持

Prompt

Create a professional mobile application called "Mr. Fanny" that works on both Android and iOS. The app connects customers with home service technicians (electricians, plumbers, AC technicians, etc.). It must support both Arabic and English languages.

🔹 The app should have 3 main interfaces:

1. Customer Interface:
- Ability to sign up or log in.
- Choose type of service needed.
- Enter location/address.
- Provide phone number.
- Submit service request and receive confirmation notification.

2. Technician Interface:
- Sign up or log in.
- Fill in registration form (name, service type, area, phone number, profile photo).
- View list of incoming service requests.
- Update status of each request (e.g., In Progress / Completed).
- Dedicated page named “My Payments” showing the commission due with a "Mark as Paid" button.

3. Admin Panel:
- Admin can review technician registrations and approve/reject them.
- View list of approved technicians.
- Monitor all service requests (open and completed).
- Track technician payments.

🔔 Notifications:
- Technician gets notified when a new request arrives.
- Admin gets notified when a new technician signs up.

🧾 Future Features (optional for later development):
- Customer rating system for technicians.
- In-app chat between customer and technician.
- In-app payment for services and commissions.
- Allow customers to attach images of the issue when sending requests.

🖌️ Design Requirements:
- Simple, user-friendly interface.
- Touch-friendly and responsive for all screen sizes.
- RTL support for Arabic and LTR for English.
- Modern and clean layout.

I want the full application built using HTML, CSS, and JavaScript only. It should be ready to upload on platforms like AppsGeyser or run in a WebView inside a mobile app.

Résultat Généré

import React, { useState } from 'react';
import './App.css';

function App() {
  const [language, setLanguage] = useState('en');
  const [userType, setUserType] = useState('customer');

  const handleLanguageChange = (lang) => {
    setLanguage(lang);
  };

  const handleUserTypeChange = (type) => {
    setUserType(type);
  };

  return (
    <div className="App">
      <header className="bg-blue-600 text-white p-4">
        <h1 className="text-2xl font-bold">Mr. Fanny</h1>
        <div className="flex space-x-4 mt-2">
          <button onClick={() => handleLanguageChange('en')} className="px-3 py-1 bg-blue-500 rounded">English</button>
          <button onClick={() => handleLanguageChange('ar')} className="px-3 py-1 bg-blue-500 rounded">عربي</button>
        </div>
        <div className="flex space-x-4 mt-2">
          <button onClick={() => handleUserTypeChange('customer')} className="px-3 py-1 bg-blue-500 rounded">Customer</button>
          <button onClick={() => handleUserTypeChange('technician')} className="px-3 py-1 bg-blue-500 rounded">Technician</button>
          <button onClick={() => handleUserTypeChange('admin')} className="px-3 py-1 bg-blue-500 rounded">Admin</button>
        </div>
      </header>

      {userType === 'customer' && (
        <div className="p-4">
          <h2 className="text-xl font-semibold">Customer Interface</h2>
          <div className="mt-4">
            <input type="text" placeholder="Enter your location" className="w-full p-2 border rounded" />
            <input type="text" placeholder="Enter your phone number" className="w-full p-2 border rounded mt-2" />
            <select className="w-full p-2 border rounded mt-2">
              <option>Choose service type</option>
              <option>Electrician</option>
              <option>Plumber</option>
              <option>AC Technician</option>
            </select>
            <button className="w-full bg-blue-500 text-white p-2 rounded mt-2">Submit Request</button>
          </div>
        </div>
      )}

      {userType === 'technician' && (
        <div className="p-4">
          <h2 className="text-xl font-semibold">Technician Interface</h2>
          <div className="mt-4">
            <input type="text" placeholder="Enter your name" className="w-full p-2 border rounded" />
            <input type="text" placeholder="Enter your service type" className="w-full p-2 border rounded mt-2" />
            <input type="text" placeholder="Enter your area" className="w-full p-2 border rounded mt-2" />
            <input type="text" placeholder="Enter your phone number" className="w-full p-2 border rounded mt-2" />
            <input type="file" className="w-full p-2 border rounded mt-2" />
            <button className="w-full bg-blue-500 text-white p-2 rounded mt-2">Register</button>
          </div>
        </div>
      )}

      {userType === 'admin' && (
        <div className="p-4">
          <h2 className="text-xl font-semibold">Admin Panel</h2>
          <div className="mt-4">
            <button className="w-full bg-blue-500 text-white p-2 rounded">View Technician Registrations</button>
            <button className="w-full bg-blue-500 text-white p-2 rounded mt-2">View Approved Technicians</button>
            <button className="w-full bg-blue-500 text-white p-2 rounded mt-2">Monitor Service Requests</button>
            <button className="w-full bg-blue-500 text-white p-2 rounded mt-2">Track Technician Payments</button>
          </div>
        </div>
      )}

      <footer className="bg-blue-600 text-white p-4 mt-8">
        <p>© 2025 Mr. Fanny. All rights reserved.</p>
      </footer>
    </div>
  );
}

export default App;

Plus de Recommandations

Voir Tout

创建AI安卓应用

技术开发en
4.0

Create applications ai for android the name app is a aw ai.eg the app can make photo and video the ai He must be smart and ai can speak Arabic

AI应用安卓开发智能助手20/06/2025

Archive.org 电影搜索

技术开发en
4.0

make a app that find all full popular movies on https://archive.org/

电影搜索Archive.org应用开发19/06/2025

打造任务管理应用

技术开发en
4.0

create task management app like ticktick.com

任务管理应用开发TickTick18/06/2025

专业应用设计指南

技术开发en
4.0

Design a professional application that remembers all the information, which is the customer's phone number and all the tasks you have performed, with dates and alerts when the time is completed and the customer must be contacted.

应用设计任务管理客户联系17/06/2025

定制Chrome新标签页

技术开发en
4.0

Create a Chrome Extension that fully customizes the new tab page with the following features: 1. Replace the default Google new tab page with a transparent custom design that includes: - A search bar only (without the Google logo). - Islamic prayer times for Marrakech (GMT+1), fetched via Aladhan API or similar. - A daily Quranic verse in "Quran" font with: - Audio playback option with selectable voices (top 5 reciters: Abdul Basit, Al-Afasy, Maher Al-Muaiqly, Ahmed Al-Ajmi, Faris Abbad). - Related Hadith and wisdom of the day. - Tafsir of the verse from an Islamic source (Tafsir API). - This content changes on every new tab open. 2. A fully Arabic football live fixture panel showing: - Matches currently being played, today, and tomorrow. - Includes team names, match times, and TV channels (open/encrypted). - Covers top leagues: Arab, European, Asian, Latin American, and major international tournaments. - Data can be fetched from api-football or LiveScore APIs. 3. Weather widget for Marrakech: - Shows current temperature, humidity, wind speed, and 2-day forecast. - Use OpenWeatherMap API (Arabic language, metric units). 4. A custom shortcuts section: - Grid-style favorite website icons (e.g., YouTube, Amazon, Reddit, Twitch). - Support for drag-and-drop reordering. Design requirements: - Fully responsive UI with light/dark mode support. - Arabic as the default language, with optional English. - Clean and modern layout. Target users: Arabic-speaking Chrome users who want a spiritual, informative, and useful custom new tab experience.

Chrome扩展伊斯兰文化足球赛事12/06/2025

React调用MercadoPago

技术开发en
4.0

Calling the init_point https://www.mercadopago.com.co/checkout/v1/redirect?pref_id= mercadopago from react

ReactMercadoPagoAPI11/06/2025