Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mashateayoub/countries
A Single page app made with angular presenting the different countries around the globe using the REST Countries API.
https://github.com/mashateayoub/countries
Last synced: 11 days ago
JSON representation
A Single page app made with angular presenting the different countries around the globe using the REST Countries API.
- Host: GitHub
- URL: https://github.com/mashateayoub/countries
- Owner: mashateayoub
- License: mit
- Created: 2023-12-01T11:03:15.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-12-10T12:46:02.000Z (about 1 month ago)
- Last Synced: 2024-12-10T13:39:58.186Z (about 1 month ago)
- Language: TypeScript
- Homepage: https://countries-lake-one.vercel.app
- Size: 355 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Countries
This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 16.2.0.
## Current Features
- Display countries with their flags, names, capitals, populations, and regions
- Search countries by name
- Filter countries by region
- Dark/Light mode toggle
- Responsive design
- Wikipedia link integration
- Material Design UI components
- Keyboard navigation
- Added infinite scroll support- Enhanced Search & Filtering
- Filter by:
- Population range
- Area size
- Language
- Currency
- Multiple region selection
- Advanced search with combinations of filters- Country Details Page
- Detailed view for each country showing:
- Native name(s)
- Currency information
- Languages spoken
- Bordering countries with clickable links
- Time zones
- Google Maps integration## Performance Features:
- **Image Optimization**: Automatically optimizes and caches images for faster loading
- **Lazy Loading**: Images are loaded only when they enter the viewport
- **Data Caching**: Implements intelligent caching for API responses
- **Resource Management**: Automatically cleans up unused resources## Development server
Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The application will automatically reload if you change any of the source files.
## Code scaffolding
Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`.
## Build
Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory.
## Running unit tests
Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io).
## Running end-to-end tests
Run `ng e2e` to execute the end-to-end tests via a platform of your choice. To use this command, you need to first add a package that implements end-to-end testing capabilities.
## Proposed New Features
### 3. Data Visualization
- Population charts
- Area comparison charts
- Regional statistics
- Interactive world map
- Economic indicators### 4. User Features
- Favorite countries list
- Country comparison tool
- User authentication
- Personal dashboard
- Notes and annotations for countries### 5. Localization
- Multi-language support
- Local time display
- Distance calculation from user's location
- Currency conversion based on real-time rates### 6. Social Features
- Share country information
- User comments and ratings
- Country travel recommendations
- Cultural information sharing### 7. Progressive Web App (PWA)
- Offline functionality
- Push notifications for country updates
- Install as desktop app
- Background sync## Further help
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.