{"id":14991403,"url":"https://github.com/dev-shetty/tatva","last_synced_at":"2025-04-12T03:32:06.181Z","repository":{"id":254090135,"uuid":"844548320","full_name":"dev-shetty/tatva","owner":"dev-shetty","description":"Explore countries interactively with real-time search and rich visuals.","archived":false,"fork":false,"pushed_at":"2024-08-21T08:25:30.000Z","size":763,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-04T22:02:53.499Z","etag":null,"topics":["bun","countries-api","guess-the-flag","leafletjs","nextjs14","react","shadcn-ui","tailwindcss","typescript","vercel"],"latest_commit_sha":null,"homepage":"https://tatva-country.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dev-shetty.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-19T13:37:06.000Z","updated_at":"2025-01-14T01:24:24.000Z","dependencies_parsed_at":null,"dependency_job_id":"999953f9-4528-42ca-9e7b-c735859845f9","html_url":"https://github.com/dev-shetty/tatva","commit_stats":{"total_commits":27,"total_committers":1,"mean_commits":27.0,"dds":0.0,"last_synced_commit":"4575bac0c0645092519c6d0de311f806e260d4c0"},"previous_names":["dev-shetty/tatva"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dev-shetty%2Ftatva","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dev-shetty%2Ftatva/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dev-shetty%2Ftatva/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dev-shetty%2Ftatva/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dev-shetty","download_url":"https://codeload.github.com/dev-shetty/tatva/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248512836,"owners_count":21116688,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bun","countries-api","guess-the-flag","leafletjs","nextjs14","react","shadcn-ui","tailwindcss","typescript","vercel"],"created_at":"2024-09-24T14:27:43.458Z","updated_at":"2025-04-12T03:32:05.837Z","avatar_url":"https://github.com/dev-shetty.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Tatva\n\n![Tatva Screenshot](https://tatva-country.vercel.app/og.png)\n\n## Project Description\n\nTatva is a dynamic web application that allows users to explore countries worldwide interactively. Built with Next.js and powered by the [REST Countries](https://restcountries.com) API, Tatva offers a real-time search, region-based filtering, and an intuitive UI for a seamless user experience.\n\n## Features\n\n- **Real-time Search**: Filter countries as you type, with instant results.\n- **Interactive Map**: View countries on an interactive map with additional details, using [leaflet.js](https://github.com/PaulLeCam/react-leaflet)\n- **Country Details Modal**: Click on a country to view more detailed information, including the flag, capital, population, and more.\n- **Guess the flag**: Improve your geography by playing this game, and flex among your friends. [Play here](https://tatva-country.vercel.app/guess-the-flag)\n\n## Technology Stack\n\n- **Frontend**:\n  - **Next.js 14**: Chosen for its SSR capabilities, improved SEO, request caching, easy dynamic routing, and built-in loading states.\n  - **Tailwind CSS**: Offers flexibility with colors and utility classes for rapid styling.\n  - **ShadcnUI**: Provides common UI elements like input, button, and modal components, and integrates seamlessly with Tailwind CSS.\n  - **TypeScript**: Catches errors during development, saving time on debugging runtime issues, and provides better API response suggestions.\n  - **Lucide React**: Used for modern and customizable UI icons.\n- **Tooling**:\n  - **Bun**: Utilized for its fast runtime, efficient package management, and smooth build processes.\n- **API**: [REST Countries API](https://restcountries.com)\n- **API Testing:** Postman - [Tatva Workspace](https://elements.getpostman.com/redirect?entityId=24002822-c6434bbf-53aa-44da-bd2f-67c7949c09a4\u0026entityType=collection)\n- **Deployment**: Vercel\n\n## Installation\n\nTo run the project locally:\n\n1. Clone the repository:\n\n   ```bash\n   git clone https://github.com/dev-shetty/tatva.git\n   ```\n\n2. Navigate to the project directory:\n\n   ```bash\n   cd tatva\n   ```\n\n3. Copy `.env.example` to `.env.local`.\n\n4. Install dependencies:\n\n   ```bash\n   bun install\n   ```\n\n5. Run the development server:\n\n   ```bash\n   bun run dev\n   ```\n\n6. Open [http://localhost:3000](http://localhost:3000) in your browser to view the application.\n\n## Deployment\n\nTatva is deployed on Vercel and can be accessed at: [https://tatva-country.vercel.app/](https://tatva-country.vercel.app/)\n\n## Potential Enhancements\n\n- Leaderboard for different metrics like population, area, etc.\n- Currency converter in `country` page to have realtime currency conversion of that country.\n  - Can be implemented by using public apis for currency conversion.\n- Compare different countries side-by-side like we have compare companies in Levels.fyi\n- Users to mark countries as favourite\n- Showcase country of the day in home page.\n- Improve the game\n  - Add option for retry and quit\n  - Make public leaderboard.\n  - Can have guess the capital, or guess the flag by country name mini-games.\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Contact\n\nFor any inquiries, please contact [deveeshshetty@gmail.com](mailto:deveeshshetty@gmail.com).\n\n---\n\nMade with ❤️ by [Deveesh Shetty](https://github.com/dev-shetty)\n\nLogo created using [LogoFast](https://shipfa.st/tools/logo-fast)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdev-shetty%2Ftatva","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdev-shetty%2Ftatva","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdev-shetty%2Ftatva/lists"}