Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/qharny/originoracle
OriginOracle: Uncover the world in your name
https://github.com/qharny/originoracle
firebase
Last synced: 13 days ago
JSON representation
OriginOracle: Uncover the world in your name
- Host: GitHub
- URL: https://github.com/qharny/originoracle
- Owner: Qharny
- Created: 2024-07-13T14:45:06.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2024-07-14T21:42:34.000Z (4 months ago)
- Last Synced: 2024-07-15T17:32:35.194Z (4 months ago)
- Topics: firebase
- Language: Dart
- Homepage:
- Size: 71.3 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# OriginOracle: Name Nationality Predictor
OriginOracle is a Flutter application that predicts the likely nationalities associated with a given name. This README explains how the application works.
## How OriginOracle Works
### 1. User Authentication
- Users start at a splash screen, which leads to a login page.
- New users can sign up with email/password or use Google/Apple sign-in.
- Existing users can log in using their credentials or social accounts.
- Firebase Authentication handles the user accounts and sessions.### 2. Dashboard
- After authentication, users land on a dashboard.
- The dashboard provides an overview of the app's features:
- Global Insights
- Probability Analysis
- Search History (planned feature)
- A "Start Predicting" button leads to the main prediction screen.### 3. Name Input and Prediction
- On the prediction screen, users enter a name into a text field.
- Tapping the "Predict" button triggers the prediction process.### 4. API Integration
- The app sends the entered name to the Nationalize.io API.
- API endpoint: `https://api.nationalize.io/?name={entered_name}`
- The API returns a JSON response with nationality predictions.### 5. Data Processing
- The app parses the JSON response from the API.
- It extracts the list of predicted countries and their probabilities.### 6. Results Display
- The app displays the prediction results in a scrollable list.
- Each list item shows:
- The country code (e.g., "US", "GB", "FR")
- The probability percentage for that country### 7. Error Handling
- If the API request fails, the app displays an error message.
- Invalid inputs or network issues are communicated to the user via SnackBar notifications.## Technical Details
- **State Management**: The app uses StatefulWidget for managing local state.
- **API Requests**: HTTP requests are made using the `http` package.
- **Authentication**: Firebase Authentication is used for user management.
- **UI**: The app uses Material Design with custom styling for an engaging user experience.## Planned Features
- Search history to keep track of past predictions
- Detailed country information for each prediction
- Ability to share results
- Dark mode toggle## Data Privacy
- OriginOracle does not store the names entered for predictions.
- User authentication data is managed securely through Firebase.
- API requests are made over HTTPS for data security.## Limitations
- Predictions are based on statistical data and may not always reflect an individual's actual nationality.
- The accuracy of predictions can vary depending on the uniqueness and global distribution of the name.## Feedback and Contributions
We welcome feedback and contributions to improve OriginOracle. Please submit issues or pull requests through our GitHub repository.