diff --git a/pincode_fetcher/lib/appbars/common_appbar.dart b/pincode_fetcher/lib/appbars/common_appbar.dart new file mode 100644 index 0000000..cf590b4 --- /dev/null +++ b/pincode_fetcher/lib/appbars/common_appbar.dart @@ -0,0 +1,56 @@ +import 'package:flutter/material.dart'; + +import '../pages/about_us.dart'; +import '../pages/landing_page.dart'; + +AppBar buildAppBar(BuildContext context) { + return AppBar( + backgroundColor: Colors.blueGrey, + title: const Text('Pincode Fetcher'), + actions: [ + TextButton( + onPressed: () { + Navigator.pop(context); + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => + const MyHomePage(title: 'Pin code Fetcher'))); + }, + child: const Text( + 'Home', + style: TextStyle( + color: Colors.white, // You can add more styling as per your need + ), + ), + ), + TextButton( + onPressed: () { + Navigator.pop(context); + Navigator.push(context, + MaterialPageRoute(builder: (context) => const AboutUs())); + }, + child: const Text( + 'About Us', + style: TextStyle( + color: Colors.white, // You can add more styling as per your need + ), + ), + ), +//TODO uncomment and add Help +/* TextButton( + onPressed:(){ + Navigator.pop(context); + Navigator.push( + context, MaterialPageRoute(builder: (context) => const Help())); + }, + child: const Text( + 'Help', + style: TextStyle( + color: Colors.white, // You can add more styling as per your need + ), + ), + ),*/ + ], + ); +} diff --git a/pincode_fetcher/lib/pages/about_us.dart b/pincode_fetcher/lib/pages/about_us.dart index 84dcc7b..9f84598 100644 --- a/pincode_fetcher/lib/pages/about_us.dart +++ b/pincode_fetcher/lib/pages/about_us.dart @@ -1,4 +1,7 @@ import 'package:flutter/material.dart'; +import 'package:pincode_fetcher/util/about_us_text.dart'; + +import '../appbars/common_appbar.dart'; class AboutUs extends StatelessWidget { const AboutUs({super.key}); @@ -6,17 +9,14 @@ class AboutUs extends StatelessWidget { @override Widget build(BuildContext context) { return Scaffold( - appBar: AppBar( - title: const Text('About us'), - ), - body: Center( - child: ElevatedButton( - onPressed: () { - // Navigate back to first route when tapped. - }, - child: const Text('Go back!'), + appBar: buildAppBar(context), + body: const SingleChildScrollView( + padding: EdgeInsets.all(8.0), + child: SelectableText.rich( + TextSpan(text: DisclaimerText.disclaimer), + style: TextStyle(fontSize: 16), ), ), ); } -} \ No newline at end of file +} diff --git a/pincode_fetcher/lib/pages/help.dart b/pincode_fetcher/lib/pages/help.dart new file mode 100644 index 0000000..390c4cb --- /dev/null +++ b/pincode_fetcher/lib/pages/help.dart @@ -0,0 +1,22 @@ +import 'package:flutter/material.dart'; + +import '../appbars/common_appbar.dart'; + +class Help extends StatelessWidget { + const Help({super.key}); + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: buildAppBar(context), + body: Center( + child: ElevatedButton( + onPressed: () { + // Navigate back to first route when tapped. + }, + child: const Text('Go back!'), + ), + ), + ); + } +} diff --git a/pincode_fetcher/lib/pages/landing_page.dart b/pincode_fetcher/lib/pages/landing_page.dart index f2cbf88..19b7718 100644 --- a/pincode_fetcher/lib/pages/landing_page.dart +++ b/pincode_fetcher/lib/pages/landing_page.dart @@ -1,5 +1,6 @@ import 'package:flutter/material.dart'; import 'package:pincode_fetcher/stores/view_port_store.dart'; +import '../appbars/common_appbar.dart'; import '../stores/location_store.dart'; import '../widgets/views/desktop.dart'; import 'about_us.dart'; @@ -24,7 +25,7 @@ class _MyHomePageState extends State { final viewport = ViewportStore(); return Scaffold( - drawer: Drawer( + /*drawer: Drawer( // Add a ListView to the drawer. This ensures the user can scroll // through the options in the drawer if there isn't enough vertical // space to fit everything. @@ -72,11 +73,8 @@ class _MyHomePageState extends State { ), ], ), - ), - appBar: AppBar( - backgroundColor: Colors.blueGrey, - title: const Text('Pincode Fetcher'), - ), + ),*/ + appBar: buildAppBar(context), body: Center( child: DesktopView(searchController: _searchController, store: store)), diff --git a/pincode_fetcher/lib/util/about_us_text.dart b/pincode_fetcher/lib/util/about_us_text.dart new file mode 100644 index 0000000..c5ee807 --- /dev/null +++ b/pincode_fetcher/lib/util/about_us_text.dart @@ -0,0 +1,166 @@ +class DisclaimerText { + static const String disclaimer = """ +Disclaimer: The information provided herein, including PIN code and post-office-related details, is for information purposes only. While publishing PIN codes and other associated information, NDTV has relied upon the data from the official website of India Post. However, NDTV does not guarantee the accuracy, reliability, topicality, correctness, completeness or quality of the information provided. The user is requested to confirm the information with their respective post offices before using any information provided herein. NDTV shall not be liable for any damage and/or loss that may arise or is incurred from the use of the information. + + + + + +© 2016-2023 PincodeArea.in + +Site designed & Promoted by Vikas Kukreja + +Disclaimer:- PinCodeArea.in is a personal website. The content provided on this portal is sourced from the official website of India Post Deparment. We have tried our best to provide the correct pin codes details, however we do not guarantee for the accuracy and / or the quality of the content. Therefore, PinCodeArea will not be accountable for any loss or damage occured by the use of content provided on this website. + + + + +FAQ + +FREQUENTLY ASKED QUESTIONS + +Q: How many post offices details are available on PinCodeArea.in? + +A: We have more than 1 lakh 55 thousands post offices' details with us. + +Q: Do you also have postal codes of villages / towns? + +A: Yes, we do have the pincodes data of more than 9 lakh localities (including villages and towns) of India. + +Q: How can I search a specific location's postal code? + +A: First you need to go to our search page. On this page, type the desire location name in the given search box. As you type, the search box will pop-up a matching suggestion list. You can then click on the relevant result to get the postal code details. + +Q: Do you have any android app that contain this data? + +A: Yes, click here to download the android app of pincodearea from Google Play Store. + +Q: Can I buy the database of postal codes from you? + +A: Yes, on public demand, we have started selling pincodes database of post offices and localities of India. Click here to get more details on this. + +Q: How can I contact you? + +A: Our contact information is available on our contact page. Alternatively, you can write us an email to pincodearea@gmail.com. + +Home | States | Districts | Sitemap | Buy Database | Contact | RSS + + + + + + + + + + + + + + + +Pin Code + +Postal Index Number (PIN), specific in India, is a unique 6-digit numeral encoding that is assigned to post offices. Indian Postal System uses the postal code system to allow effortless matching of any specific area to deliver packages, parcels and letters. + +india pin code + +History + +History has that the pin code system was the brainchild of Mr. Shriram Bhikaji Velankar (the then Additional Secretary in the union ministry of communication). He came up with this system on August 15, 1972, as a medium to simplify the manual sorting and delivery of correspondence. It works by eliminating the mix-up of wrong addresses, primarily caused by places with similar names and the use of varied languages by people. + +Mr. Shriram Bhikaji Velankar (Additional Secretary in the union ministry of communication), introduced this system on 15th August 1972, to simplify the sorting and delivery of correspondence. To avoid the mix up of incorrect addresses, caused because of similar names and the usage of different languages by people. + +The system was originally formulated by the USSR and then gradually it has been adapted by other countries. In some countries Postal codes are all numerical but some use an alphanumeric system. + +PIN Code vs ZIP Code + +Zonal Improvement Plan (ZIP) codes system was introduced by the USA during the 1960s to ease the mail sorting process. It has 5 digits referring to the national area, district post office and local post office, respectively. + +As compared to that, the Postal Index Number (PIN) code system is native to India. It is exactly the same concept as Zonal Improvement Plan (ZIP) Code which has 5 digits, instead of that Postal Index Number (PIN) has 6 digits. + +Both coding systems have the same concept in sorting out mails and figuring out the exact location for delivering in an effective and efficient manner. + +Decoding the Postal Index Number + +To simply manage, the Indian Postal Service has assigned 9 specific Postal Index Number (PIN) regions across India, out of which 8 was allotted to geographical regions and the 9th is reserved to the Indian Army known as functional zone. + +Each 6-digit PINcode has a particular meaning. + +The first digit assigned to the overall geographical region. + +The second digit is designated to the postal circle or sub region. + +The third digit is allotted to the sorting district. + +Last 3 digits collectively indicate the specific Post Office in the district. + +For Example: + +The Postal Index Number of Central Delhi is 110001 + +1 = Region in India + +1 = Sub region in India + +0 = Sorting District + +0 = Post Office + +0 = Post Office + +1 = Post Office + +All about Indian Postal System + +The Postal Department in India trades under the name India Post which is run under the Government of the country. This particular department comes under the Ministry of Communications and Information Technology of the Government of India. It is divided into 22 postal circles and each circle is broken into regions and is in care of the Chief Postmaster General. The regions are divided into divisions and subdivisions as well. + +The Postal Service in India has witnessed changes and has emerged as the fastest service provider over the years. They had penetrated into remote places across the country and offered people to send mails at a minimal price. Which makes Post India a small financial institution which helps its citizens to spend their money securely. + + +Frequenty Asked Questions (FAQs) + +How can I search for the PIN Code of my location? + +Finding the Postal Index Number (PIN) Code of your locality is very easy. Type the location name in the search box given on this page and enter. Then it will display a list of all locations with similar names that you searched. + +How many areas' postal codes are available on PINCODE AREA? + +We currently have more than 9,00,000 area PIN codes and 1,56,000 post offices codes on our website. + +What are the services you provide? + +PinCodeArea.in is the fastest and utmost Postal Index Number (PIN) database holder, providing all the location’s pincodes of India. + +The Last 2 digits represent? + +The last 2 digits represent the delivery office of the sorting district. Starting from 01 would be the General Post Office (GPO) or Head Office (HO). + +What if the volume of the mail at the delivery office is too large? + +In that case, the new Delivery Office (DO) will be created and the next available Postal Index Number (PIN) is assigned. If the two Delivery Offices (DO) are located near each other then only the first four digits will be common. + +Is PIN Code and Zip Code the same? + +Postal Index Number (PIN) is a code for the postal system that is used in India. It is the same idea as the Zonal Improvement Plan (ZIP) code which is used in the USA. Zonal Improvement Plan (ZIP) code has 5 digits and Postal Index Number (PIN) code has 6 digits. + + +About Pincode Area + +pin code areaPinCodeArea.in is a personal website that holds an enormous database of around 1,56,000 post offices and more than 9,00,000 localities in India. The aim is to provide rapid and precise information and details of postal index numbers in India, to ensure that the packages, parcels, mails and correspondence reaches the correct Postal address. + +Established in August 2016, the website offers people with a one stop solution for all pincode related information. The concept was the need for a single utmost platform that provides a complete data bank of Postcodes for all the areas and regions in India. No area remains remote on this website! + +This website assists you in the search for a specific Postal Code of any area or region in India, making it accessible for anyone sending out parcels, shipments, mails or correspondence to a known or an unknown address. + +If PinCodeArea website has helped you in locating the Postal Index Number (PIN) of the locality you are looking for, please consider recommending and sharing it with your friends, family and to others you think our website can assist them with. + +Our website has eased the lives of many, making it a lot easier to locate a nearby or faraway post office. + +Browse and ‘Search’ the Postal Index Number (PIN) Code of any Region, State, District and Post Office of India, fast and accurately. The search is user friendly as the website is designed to match the criteria of a user, based on the specific area, the results come in a blink of an eye, giving you instant information about the postal code on your screen. NO AREA WILL EVER REMAIN REMOTE FOR ANYONE with PincodeArea! + + + + +"""; +} diff --git a/pincode_fetcher/lib/widgets/output.dart b/pincode_fetcher/lib/widgets/output.dart index af9d9f4..bf54e7e 100644 --- a/pincode_fetcher/lib/widgets/output.dart +++ b/pincode_fetcher/lib/widgets/output.dart @@ -40,7 +40,6 @@ class _GenerateAddressOutputState extends State { child: SingleChildScrollView( scrollDirection: Axis.horizontal, child: ConstrainedBox( - constraints: BoxConstraints(minWidth: constraints.maxWidth), child: DataTable( showBottomBorder: true, diff --git a/pincode_fetcher/lib/widgets/selectable_text.dart b/pincode_fetcher/lib/widgets/selectable_text.dart index a291608..ff86535 100644 --- a/pincode_fetcher/lib/widgets/selectable_text.dart +++ b/pincode_fetcher/lib/widgets/selectable_text.dart @@ -7,9 +7,10 @@ class Selectable extends StatelessWidget { @override Widget build(BuildContext context) { - return SelectableText.rich( - TextSpan(style: const TextStyle(fontSize: 18,fontWeight: FontWeight.w900), children: [ - TextSpan(text: text), - ])); + return SelectableText.rich(TextSpan( + style: const TextStyle(fontSize: 18, fontWeight: FontWeight.w900), + children: [ + TextSpan(text: text), + ])); } }