{"id":27050880,"url":"https://github.com/agarwalrachit399/stocksearchapp","last_synced_at":"2026-05-06T22:04:51.278Z","repository":{"id":240442264,"uuid":"783045063","full_name":"agarwalrachit399/StockSearchApp","owner":"agarwalrachit399","description":"Angular Powered Web Application to search for the live information of stocks","archived":false,"fork":false,"pushed_at":"2024-10-30T05:54:08.000Z","size":274,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-05T08:20:33.393Z","etag":null,"topics":["angular","stock-market","web-development"],"latest_commit_sha":null,"homepage":"https://csci571assign3-2205.wl.r.appspot.com/","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/agarwalrachit399.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-04-06T19:36:24.000Z","updated_at":"2024-10-30T05:54:11.000Z","dependencies_parsed_at":"2024-10-30T05:19:50.041Z","dependency_job_id":null,"html_url":"https://github.com/agarwalrachit399/StockSearchApp","commit_stats":null,"previous_names":["agarwalrachit399/stocksearchapp"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/agarwalrachit399/StockSearchApp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agarwalrachit399%2FStockSearchApp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agarwalrachit399%2FStockSearchApp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agarwalrachit399%2FStockSearchApp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agarwalrachit399%2FStockSearchApp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/agarwalrachit399","download_url":"https://codeload.github.com/agarwalrachit399/StockSearchApp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agarwalrachit399%2FStockSearchApp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32713828,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-06T19:35:05.142Z","status":"ssl_error","status_checked_at":"2026-05-06T19:35:03.996Z","response_time":117,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["angular","stock-market","web-development"],"created_at":"2025-04-05T08:19:54.379Z","updated_at":"2026-05-06T22:04:51.252Z","avatar_url":"https://github.com/agarwalrachit399.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# [VanguardInvest]( csci571assign3-2205.wl.r.appspot.com/ )\n\nA responsive Angular web application for searching stock information, maintaining a watchlist, and managing a virtual portfolio.\n\n## Table of Contents\n\n1. [Architectural Overview](#architectural-overview)\n2. [Features](#features)\n3. [Technologies Used](#technologies-used)\n4. [Getting Started](#getting-started)\n\n### Architectural Overview\n\n![Project Logo](https://vfunction.com/wp-content/uploads/2024/05/blog-3-tier-application.webp)\n\nThe Application utilizes a `Three Layered Architectural Pattern` where the backend containing the REST API's communicate with 3rd party API, databases to fetch the required data. These API's communicate with the standalone Angular Components through various Services. The global state management is handled by creating dedicated services for sharing common data between different components.\n\n- This pattern promotes `modularity` and `reusability` of various Angular Components.\n- It also emphasizes a `separation of concerns` and decouples the UI from the underlying business logic.\n- It makes the application `scalable` and easier to integrate newer features.\n\n\n### Features\n\n- **Search Stocks**: Search for stocks by name or ticker symbol and view detailed information like price, market cap, and daily changes.\n- **Watchlist**: Add stocks to a personalized watchlist for quick access and tracking.\n- **Portfolio**: Track and manage a virtual stock portfolio with buy/sell features.\n- **Responsive Design**: Mobile-friendly interface for seamless use across devices.\n- **Real-Time Data**: Up-to-date stock information using an external financial data API.\n\n### Technologies Used\n- **Frontend**: Angular, TypeScript, Angular Material\n- **State Management**: NgRx\n- **Styling**: CSS, Angular Material\n- **API**: REST API for stock data \n### Getting Started\n\nThese instructions will help you set up and run the project locally.\n\n#### Prerequisites\n\n- [Node.js](https://nodejs.org/) (v14+)\n- [Angular CLI](https://angular.io/cli) (v12+)\n- [MongoDB](https://www.mongodb.com/) (v4+)\n\n#### Installation\n\n1. **Clone the Repository**:\n\n   ```bash\n   git clone https://github.com/agarwalrachit399/StockSearchApp.git\n   cd StockSearchApp\n2. **Install Dependencies**:\n   ```bash\n   npm install\n   ```\n3. **API Configuration**:\n- Obtain an API key from [Finnhub](https://finnhub.io/) and [Polygon](https://polygon.io/) \n- Create a .env file in the root directory and add your API key:\n\n  ```bash\n  FINHUB_API_KEY = your_finnhub_api_key_here\n  POLYGON_API_KEY = your_polygon_api_key_here\n4. **Set up MongoDB**:\n- Ensure MongoDB is running locally or connect to a MongoDB Atlas cluster.\n- The application requires two databases:\n   - **WatchList**: Stores the user's selected stocks for quick access.\n   - **Portfolio**: Stores details about stocks in the user's portfolio with buy/sell history.\n- In the .env file, add your MongoDB connection string and database name.\n\n  ```bash\n  MONGODB_URI= your_connection_string\n  DATABSE_NAME = your_database_name\n\n#### Usage\n\n1. **Build**:\n- To build the project for production. The build artifacts will be stored in the `dist/` directory.\n\n  ```bash\n  ng build\n  ```\n2. **Backend Server**:\n- To start your application, run the backend sever. The application will be available at `localhost:3000/`\n\n   ```bash\n   node server.js\n   ```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagarwalrachit399%2Fstocksearchapp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fagarwalrachit399%2Fstocksearchapp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagarwalrachit399%2Fstocksearchapp/lists"}