{"id":16117335,"url":"https://github.com/ananyo141/computershop","last_synced_at":"2025-09-15T14:42:28.020Z","repository":{"id":110159844,"uuid":"581753809","full_name":"ananyo141/ComputerShop","owner":"ananyo141","description":"A full-featured e-commerce webapp for computer parts.","archived":false,"fork":false,"pushed_at":"2023-05-31T09:23:35.000Z","size":4620,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-12-19T18:30:50.965Z","etag":null,"topics":["expressjs","javascript","jwt","mern-stack","nodejs","react","typescript"],"latest_commit_sha":null,"homepage":"https://computershop-frontend.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ananyo141.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2022-12-24T07:38:12.000Z","updated_at":"2023-05-28T16:18:14.000Z","dependencies_parsed_at":"2024-11-01T02:40:58.363Z","dependency_job_id":null,"html_url":"https://github.com/ananyo141/ComputerShop","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/ananyo141%2FComputerShop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ananyo141%2FComputerShop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ananyo141%2FComputerShop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ananyo141%2FComputerShop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ananyo141","download_url":"https://codeload.github.com/ananyo141/ComputerShop/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238489575,"owners_count":19480993,"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":["expressjs","javascript","jwt","mern-stack","nodejs","react","typescript"],"created_at":"2024-10-09T20:44:09.138Z","updated_at":"2025-02-12T14:42:40.813Z","avatar_url":"https://github.com/ananyo141.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Computer  Shop | [DEMO](https://computershop-frontend.onrender.com/)\n\nA full-featured _online shopping application_, that captures the usual flow of _user registration/login_, choosing products and _adding to cart_, and finally _checking out_ the order with personal details.\n\nThis project is written entirely with **TypeScript**, with best practices in mind leveraging **Redux Toolkit** and custom _typed hooks_ and an _expressive project structure_.\n\nCheck out the readme scripts for the individual repos for [frontend](./frontend/README.md) and [backend](./backend/README.md).\n\n## Demo\n\nThe entirety of the application (frontend and backend) is hosted on [Render](https://render.com/).\n\nFrontend (global CDN): [Try it out](https://computershop-frontend.onrender.com/)\n\nBackend (Singapore): [Try it out](https://computershop-ananyo.onrender.com/api/v1/products/)\n\nYoutube Demo: [On my channel](https://www.youtube.com/watch?v=1uHAwhE77C0)\n\n_**NOTE**: Since render has restrictions for free tier web services, the startup time can take several seconds for the first request._\n\n## Features\n\n- Support logins from multiple devices, all user carts and _details are preserved_, ie, add products from another device, checkout from another afterwards\n- Saved previous orders\n- **Secure logins** with _JSON Web Tokens (**JWT**)_\n- **Fully responsive** and works well with mobiles, laptops and desktops\n- Beautiful and intuitive UI, powered by **TailwindCSS**\n\n## Tech Stack\nLeverages the latest and greatest technologies for better optimization and support.\n\n#### Frontend:\n - **ReactJS**\n - **Redux Toolkit**\n - **Typed/custom hooks**\n\n#### Backend:\n - **ExpressJS** _(NodeJS framework)_\n - **JWT Package** for secure authentication\n - **Mongoose** for seamless integration with **MongoDB**\n\n**TypeScript** for runtime type safety.\n\n**Husky** for pre-commit code linting and **prettier** for formatting.\n\n## Environment Variables\n\nTo run this project, you will need to add the following environment variables to your .env file. Also consult the .env.example sample file.\n\n`CONNECTIONSTR` contains the _MONGODB URI_ for associated **NoSQL database**\n\n`ACCESS_TOKEN_SECRET` secret to sign the access tokens with\n\n`REFRESH_TOKEN_SECRET` secret to sign the refresh tokens with\n\n## License\n\n[GPL v3](./LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fananyo141%2Fcomputershop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fananyo141%2Fcomputershop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fananyo141%2Fcomputershop/lists"}