virtual-phone-numbers

byRollo

# App Development Prompt: FreeConnect — Virtual Number & Calling App Build a modern, interactive Android communication app called **FreeConnect**. The app should allow users to access virtual phone numbers, make and receive internet-based calls, and call regular mobile and landline numbers. ## 1. Supported Countries Display virtual number availability for these destinations: - 🇮🇳 India (+91) - 🇵🇰 Pakistan (+92) - 🇧🇩 Bangladesh (+880) - 🇬🇧 United Kingdom (+44) - 🇺🇸 United States (+1) - 🇦🇪 Dubai, United Arab Emirates (+971) - 🇮🇷 Iran (+98) **Important:** Show only numbers that the selected telecom provider can legally supply. If numbers for a country are unavailable, display “Currently unavailable.” Do not generate fake real-world phone numbers or claim unsupported availability. ## 2. Internet-Based Calling - Make and receive voice calls over Wi-Fi or mobile data. - Support app-to-app audio calls. - Provide an interactive dial pad and contact list. - Include incoming-call notifications and call history. - Add mute, speaker, hold, and end-call controls. - Use WebRTC or a compatible SIP/VoIP service. - Support background calls and reconnection after network interruptions. ## 3. Normal Phone Calling - Allow users to call regular mobile and landline numbers. - Support international dialing codes and number validation. - Receive incoming calls to provisioned virtual numbers. - Route calls through a compatible PSTN/SIP telecom provider. - Display call duration, call status, and applicable charges. - Support emergency-call handling through the appropriate native phone service; do not route emergency calls through an unsupported VoIP system. Normal cellular calls must use the device's SIM and Android phone services. Calls from a virtual number to ordinary phone numbers require a provider with outgoing PSTN connectivity. ## 4. Virtual Phone Numbers Create a country-selection screen for India, Pakistan, Bangladesh, the UK, the USA, Dubai/UAE, and Iran. For each country: - Display the international dialing code. - Show available numbers from the provider. - Show whether incoming calls, outgoing calls, and SMS are supported. - Display pricing, verification requirements, and number expiration. - Allow users to select, activate, manage, or release numbers. - Support multiple numbers if permitted by the provider. Do not promise number availability or SMS verification for WhatsApp or other third-party platforms. ## 5. No Mandatory Login - Allow users to explore the app without creating an account. - Generate an anonymous user ID for the initial session. - Store demo preferences locally. - Offer optional secure backup and account recovery. - Require identity verification only when mandated by the provider or applicable law. - Explain that reinstalling the app or clearing its data may remove locally stored anonymous settings. ## 6. Additional Features - SMS and messaging where supported. - App-to-app calls. - Multiple virtual numbers. - Voicemail. - Call forwarding. - Call blocking. - Conference calling. - Contacts and call history. - Dark mode and light mode. - Push notifications for incoming calls and messages. - Usage and credit dashboard. - Privacy and security settings. ## 7. Free and Demo Mode - Make the prototype free to explore without login. - Provide demo numbers and simulated calls. - Clearly label simulated calls and messages. - Do not pretend that demo calls connect to real telephone networks. - Display actual provider charges before users activate paid telecom services. - Do not advertise real international calling as free unless the provider explicitly offers it for free. ## 8. Recommended Technology - Android: Kotlin + Jetpack Compose. - Internet calling: WebRTC or SIP SDK. - Virtual numbers and normal phone network connectivity: compatible telecom provider. - Backend: Node.js + TypeScript. - Database: PostgreSQL. - Notifications: Firebase Cloud Messaging. - Security: HTTPS, secure authentication tokens, encrypted sensitive data, and abuse prevention. Keep telecom API credentials on the backend, not in the Android application. ## 9. Design Requirements Create a polished, user-friendly interface with bottom navigation: Home | Keypad | Contacts | Messages | Settings Include a country selector, virtual-number dashboard, incoming-call screen, active-call screen, call history, voicemail inbox, and number-management page. ## 10. Final Deliverables Provide the complete Android project, source code, UI components, backend API structure, demo mode, telecom integration interfaces, installation instructions, and testing guide. **Final objective:** Deliver a usable Android communication app with internet calling, normal phone calling through supported telecom services, and virtual-number selection for India, Pakistan, Bangladesh, the UK, the USA, Dubai/UAE, and Iran, subject to actual provider availability and local regulations.

No preview

Comments (0)

No comments yet. Be the first!

Project Tasks

21 planning tasks
#1

Generate system requirement document

1m 50s0.2 cr used
Done
#2

Generate personas & user flows

0m 12s0.2 cr used
Done
#7

Create flow for Anonymous Explorer

0m 11sCredits in parent
Done
#8

Create flow for Virtual Number Subscriber

0m 11sCredits in parent
Done
#9

Create flow for Caller

0m 10sCredits in parent
Done
#10

Landing

Credits in subtasks
Backlog
#11

Home

Credits in subtasks
Backlog
#12

country selector

Credits in subtasks
Backlog
#13

virtual-number dashboard

Credits in subtasks
Backlog
#14

number-management page

Credits in subtasks
Backlog
#15

Keypad

Credits in subtasks
Backlog
#16

Contacts

Credits in subtasks
Backlog
#17

Messages

Credits in subtasks
Backlog
#18

incoming-call screen

Credits in subtasks
Backlog
#19

active-call screen

Credits in subtasks
Backlog
#20

call history

Credits in subtasks
Backlog
#21

voicemail inbox

Credits in subtasks
Backlog
#22

Settings

Credits in subtasks
Backlog
#23

Account Recovery

Credits in subtasks
Backlog
#5

Architecture

0.2 cr needed
Backlog
#6

Workspace task plan

0.2 cr needed
Backlog

No completed page designs yet.

Completed design pages will appear here when they are ready to preview.

Landing: Read demo-mode disclosure
Landing: View supported countries
Landing: Enter app anonymously
Home: View anonymous session state
country selector: 1. Browse seven destinations
country selector: 2. Retry availability fetch
Home: Start demo call
Settings: View anonymous user ID
Settings: Toggle dark or light mode
Settings: Read local-data-loss notice
Account Recovery: Enable optional secure backup
Account Recovery: Decline backup and continue anonymously

No completed page designs yet.

Completed design pages will appear here when they are ready to preview.

Landing: Read demo-mode disclosure
Landing: View supported countries
Landing: Enter app anonymously
Home: View anonymous session state
country selector: 1. Browse seven destinations
country selector: 2. Retry availability fetch
Home: Start demo call
Settings: View anonymous user ID
Settings: Toggle dark or light mode
Settings: Read local-data-loss notice
Account Recovery: Enable optional secure backup
Account Recovery: Decline backup and continue anonymously