{"id":21246824,"url":"https://github.com/apfirebolt/mevn-stocks-app","last_synced_at":"2026-04-11T06:02:42.359Z","repository":{"id":45195052,"uuid":"391250492","full_name":"Apfirebolt/mevn-stocks-app","owner":"Apfirebolt","description":"A multi-user stock trading app in Express, Vue and MongoDB","archived":false,"fork":false,"pushed_at":"2022-08-14T12:00:24.000Z","size":3253,"stargazers_count":0,"open_issues_count":5,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-15T04:45:12.273Z","etag":null,"topics":["express","expressjs","mongodb","mongoose","tailwindcss","vue","vue-tailwind","vuejs","vuex"],"latest_commit_sha":null,"homepage":"","language":"Vue","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/Apfirebolt.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}},"created_at":"2021-07-31T04:04:26.000Z","updated_at":"2022-01-01T22:04:13.000Z","dependencies_parsed_at":"2022-09-05T17:50:56.567Z","dependency_job_id":null,"html_url":"https://github.com/Apfirebolt/mevn-stocks-app","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Apfirebolt%2Fmevn-stocks-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Apfirebolt%2Fmevn-stocks-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Apfirebolt%2Fmevn-stocks-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Apfirebolt%2Fmevn-stocks-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Apfirebolt","download_url":"https://codeload.github.com/Apfirebolt/mevn-stocks-app/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Apfirebolt%2Fmevn-stocks-app/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259172950,"owners_count":22816555,"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":["express","expressjs","mongodb","mongoose","tailwindcss","vue","vue-tailwind","vuejs","vuex"],"created_at":"2024-11-21T02:07:17.947Z","updated_at":"2025-12-30T22:38:52.161Z","avatar_url":"https://github.com/Apfirebolt.png","language":"Vue","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AppStocks - A virtual stock trading web application\n\n## Project Briefing\n\nThis is a stock trading app I built to keep track of portfolios and stocks to manage. It's created in one of the most popular full stack technologies combination known as MEVN. \n\n## Features\n\n- Contains token based user auth system. \n- Each user can perform CRUD on Portfolio.\n- Stocks can be added to a portfolio and can be associated with different stock actions.\n- Profile settings is provided where you can add balance, change profile settings and profile image.\n## Built With\n\n* [Express](https://expressjs.com/)\n* [Vue](https://vuejs.org/)\n* [MongoDB](https://www.mongodb.com/)\n* [Vuex](https://vuex.vuejs.org/)\n* [Tailwind CSS](https://tailwindcss.com/)\n\n## Authors\n\n* **Amit Prafulla (APFirebolt)** - (http://amitprafull.com/)\n\n## Project setup\n\nSimply install node modules for both frontend and backend, the project is already configured to serve build content files in production which is generated by Vue which resides inside the build folder.\n\nConcurrently, package is used for development and allows us to launch both frontend and back-end in one go using single command. Proxy is used for API calls made to the Express server inside the Vue application using the config file.\n\n```\nnpm install\nnpm run dev\n```\n\nFor production, build the frontend of the app and then run the backend app only. \n\n```\nnpm run build\nnpm start\n```\n\nThe entire app can be served through Nginx after build using proxy pass. The following sample code illustrates this and assumes the back-end app is running on port 5000 in production mode.\n\n```\nuser www-data;\nworker_processes auto;\npid /run/nginx.pid;\ninclude /etc/nginx/modules-enabled/*.conf;\n\nevents {\n    worker_connections 768;\n    # multi_accept on;\n}\n\nhttp {\n    server {\n    listen 80;\n    listen [::]:80;\n\n    location / {\n        proxy_pass http://localhost:5000/;\n    }\n  }\n}\n\n```\n\n## Project Screenshots\n\nPlease find some of the screenshots of the application. Below is the screenshot of the Home Page.\n\n![alt text](./screenshots/homepage.png)\n\nPlease find some of the screenshots of the application. Below is the screenshot of the Add Stock Page.\n\n![alt text](./screenshots/add_stock.png)\n\nResponse after the stock is added successfully.\n\n![alt text](./screenshots/add_stock_success.png)\n\nLogin page.\n\n![alt text](./screenshots/login.png)\n\nProfile settings page.\n\n![alt text](./screenshots/profile.png)\n\nPortfolio page.\n\n![alt text](./screenshots/portfolio.png)\n\nStock detail page.\n\n![alt text](./screenshots/stock_detail.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapfirebolt%2Fmevn-stocks-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapfirebolt%2Fmevn-stocks-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapfirebolt%2Fmevn-stocks-app/lists"}