{"id":26604199,"url":"https://github.com/cyrus-nodejs/e-commerce","last_synced_at":"2025-03-23T19:28:44.317Z","repository":{"id":264909289,"uuid":"893673370","full_name":"cyrus-nodejs/e-commerce","owner":"cyrus-nodejs","description":"A FULL STACK ECOMMERCE APP","archived":false,"fork":false,"pushed_at":"2025-02-22T17:11:29.000Z","size":1494,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-22T18:22:54.348Z","etag":null,"topics":["authentication","bootstrap","cloudinary-api","mongodb-atlas","nodemailer","passport-local-mongoose","redux-toolkit","stripe-api"],"latest_commit_sha":null,"homepage":"https://shoppingluxury.netlify.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/cyrus-nodejs.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-11-25T02:07:15.000Z","updated_at":"2025-02-22T17:11:32.000Z","dependencies_parsed_at":"2025-01-18T20:23:27.623Z","dependency_job_id":"5fc9aedb-ec40-4968-89f1-980530ceb191","html_url":"https://github.com/cyrus-nodejs/e-commerce","commit_stats":null,"previous_names":["cyrus-nodejs/e-commerce"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cyrus-nodejs%2Fe-commerce","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cyrus-nodejs%2Fe-commerce/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cyrus-nodejs%2Fe-commerce/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cyrus-nodejs%2Fe-commerce/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cyrus-nodejs","download_url":"https://codeload.github.com/cyrus-nodejs/e-commerce/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245156977,"owners_count":20569948,"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":["authentication","bootstrap","cloudinary-api","mongodb-atlas","nodemailer","passport-local-mongoose","redux-toolkit","stripe-api"],"created_at":"2025-03-23T19:28:42.920Z","updated_at":"2025-03-23T19:28:44.309Z","avatar_url":"https://github.com/cyrus-nodejs.png","language":"TypeScript","readme":"# MERN E-Commerce Application\n\nA fully functional e-commerce application built with the MERN stack (MongoDB, Express, React, Node.js). This app includes features like product browsing, shopping cart management, Stripe payment integration, and an admin dashboard to manage products and orders.\n\n## Features\n\n- **Product Browsing**: Users can view a variety of products with images, descriptions, and prices.\n- **Shopping Cart**: Users can add items to the cart, view the cart, update quantities, and proceed to checkout.\n- **Stripe Payment Integration**: Users can securely make payments using Stripe's API.\n- **Admin Panel**: Admin users can manage products (add, update, delete) and view order details.\n- **User Authentication**: Secure user login and registration using JWT (JSON Web Tokens).\n- **Order Management**: Admins can see and manage customer orders and their statuses.\n\n## Technologies Used\n\n- **Frontend**: React, Redux (for state management), Axios\n- **Backend**: Node.js, Express.js\n- **Database**: MongoDB\n- **Authentication**: JWT (JSON Web Tokens)\n- **Payment**: Stripe API\n- **Hosting**: (Choose your preferred hosting solution, e.g., Heroku, Netlify for frontend, etc.)\n\n## Getting Started\n\nTo run this project locally, follow these steps:\n\n### 1. Clone the repository\n\n```bash\ngit clone https://github.com/cyrus-nodejs/e-commerce.git\n2. Install Dependencies\nInstall both client-side and server-side dependencies.\n\nFor the backend:\nbash\nCopy\ncd backend\nnpm install\nFor the frontend:\nbash\nCopy\ncd frontend\nnpm install\n3. Set Up Environment Variables\nCreate a .env file in the root of both backend and frontend directories.\n\nBackend .env file:\nbash\nCopy\nMONGO_URL=\u003cyour-mongodb-connection-string\u003e\nJWT_SECRET=\u003cyour-jwt-secret-key\u003e\nSTRIPE_SECRET=\u003cyour-stripe-secret-key\u003e\nMONGO_URL=mongodb+srv://admin-bakerr:N0qmGOCBDkSPKQYC@cluster0.pdu7dww.mongodb.net/shop-here\n\n\n#  FRONTEND_URL= http://localhost:5173\nPASS=ovcqtpyyevpbtjms\nSTRIPE_PUBLISHABLE_KEY = pk_test_51Mm5W2C39kEUAF74gA8phE7elm1XbnhXDVOckq9LkH5s5Vqk2R7veSHQC9EVq6N48uGuIwiReOcjgoOZVNQXzAPi00z6RuwWbw\nSTRIPE_SECRET = sk_test_51Mm5W2C39kEUAF7481E7iFl931qdc47cg1Wr2VHq7fyP8dJAa96Q5sdda6pk5xlkCYjxh2HwjFEXf0eSByhrP4sv00N1jK2w1O\n\nFrontend .env file:\nbash\nCopy\nREACT_APP_BACKEND_URL=http://localhost:5000\n4. Run the Application\nStart the Backend Server:\nbash\nCopy\ncd backend\nnpm start\nStart the Frontend Development Server:\nbash\nCopy\ncd frontend\nnpm start\nYour application should now be running at http://localhost:3000.\n\nAdmin Panel\nThe admin dashboard allows managing products and viewing orders. You can access it by logging in with the admin credentials (ensure the user is marked as an admin in the database).\n\nStripe Integration\nSign up for a Stripe account here.\nObtain your Stripe API keys and place them in the backend .env file.\nMake sure to test payments using Stripe's test card numbers.\nScreenshots\n\nFuture Improvements\nAdd pagination for products.\nIntegrate more payment gateways.\nImplement email notifications for order updates.\nAdd reviews and ratings for products.\nLicense\nThis project is licensed under the MIT License - see the LICENSE file for details.\n\nAcknowledgements\nThanks to Stripe for providing the payment gateway API.\nThanks to MongoDB for database management.\nFeel free to fork, contribute, or modify this repository as needed!\n\nmarkdown\nCopy\n\n### Key Points:\n1. **Folder Structure**: \n    - `backend`: Contains the Node.js API.\n    - `frontend`: Contains the React app.\n2. **Admin Panel**: Add functionality to manage products and orders, and ensure proper authentication for admin users.\n3. **Stripe Integration**: You’ll need the Stripe API keys, and the backend should handle payment processing.\n4. **Environment Variables**: These should be securely stored and not exposed publicly.\n\nLet me know if you need any specific additions or modifications!","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcyrus-nodejs%2Fe-commerce","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcyrus-nodejs%2Fe-commerce","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcyrus-nodejs%2Fe-commerce/lists"}