{"id":25289055,"url":"https://github.com/jacob-majesty/ecommerce","last_synced_at":"2025-10-25T15:09:49.608Z","repository":{"id":276986419,"uuid":"930889944","full_name":"jacob-majesty/ecommerce","owner":"jacob-majesty","description":"Build a Full-Stack ecommerce application with Angular and Spring Boot","archived":false,"fork":false,"pushed_at":"2025-02-26T14:17:05.000Z","size":43648,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-06T17:36:09.856Z","etag":null,"topics":["angular","java","mysql","spring-boot","spring-security"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jacob-majesty.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,"zenodo":null}},"created_at":"2025-02-11T11:33:17.000Z","updated_at":"2025-02-26T14:17:09.000Z","dependencies_parsed_at":"2025-02-11T14:40:52.601Z","dependency_job_id":"6ef40fe7-4b42-4d54-85de-e0e20999d8df","html_url":"https://github.com/jacob-majesty/ecommerce","commit_stats":null,"previous_names":["jacob-majesty/ecommerce"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jacob-majesty/ecommerce","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jacob-majesty%2Fecommerce","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jacob-majesty%2Fecommerce/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jacob-majesty%2Fecommerce/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jacob-majesty%2Fecommerce/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jacob-majesty","download_url":"https://codeload.github.com/jacob-majesty/ecommerce/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jacob-majesty%2Fecommerce/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263973362,"owners_count":23537977,"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":["angular","java","mysql","spring-boot","spring-security"],"created_at":"2025-02-12T23:40:40.418Z","updated_at":"2025-10-25T15:09:49.548Z","avatar_url":"https://github.com/jacob-majesty.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n![image](https://github.com/user-attachments/assets/18a550bd-3af2-4ad9-b7b3-7270c17298ad)\n\n# Full-Stack Application with Angular and Spring Boot\n\n## Project Overview\nThis project is a complete full-stack application built using Angular for the frontend and Spring Boot for the backend. The application provides a seamless shopping experience where users can browse products, manage a shopping cart, securely log in and out, and track their previous orders.\n\n## Features\n- **Product List:** View a catalog of products available for purchase.\n- **Shopping Cart:** Add, update, and remove products from the shopping cart.\n- **Checkout:** Complete purchases by proceeding through the checkout process.\n- **User Authentication:** Secure login and logout functionality.\n- **Order History:** View past orders for logged-in users.\n\n## Technologies Used\n- **Frontend:** Angular 15+\n- **Backend:** Spring Boot 3+\n- **Database:** MySQL\n- **Security:** Spring Security for backend security\n- **API Communication:** RESTful APIs\n- **Documentation:** Swagger for API documentation\n- **Build Tools:** Maven, npm\n\n## Prerequisites\nBefore running this application, ensure you have the following installed:\n- Node.js and npm\n- Angular CLI\n- Java 17+\n- Maven\n- MySQL\n\n## Setup Instructions\n\n### Backend (Spring Boot)\n1. Clone the repository:\n   ```bash\n   git clone \u003crepository-url\u003e\n   cd \u003cbackend-directory\u003e\n   ```\n2. Configure the database in `application.properties`:\n   ```properties\n   spring.datasource.url=jdbc:mysql://localhost:3306/\u003cyour-database-name\u003e\n   spring.datasource.username=\u003cyour-username\u003e\n   spring.datasource.password=\u003cyour-password\u003e\n   ```\n3. Build and run the application:\n   ```bash\n   mvn clean install\n   mvn spring-boot:run\n   ```\n4. The backend will be available at `http://localhost:8080`.\n5. Access Swagger API documentation at `http://localhost:8080/swagger-ui.html`.\n\n### Frontend (Angular)\n1. Navigate to the frontend directory:\n   ```bash\n   cd \u003cfrontend-directory\u003e\n   ```\n2. Install dependencies:\n   ```bash\n   npm install\n   ```\n3. Start the development server:\n   ```bash\n   ng serve\n   ```\n4. The frontend will be available at `http://localhost:4200`.\n\n## Usage\n1. Access the product list from the homepage.\n2. Add products to your shopping cart and view the cart.\n3. Proceed to checkout and complete your purchase.\n4. Log in to view and track your previous orders.\n\n## Security\n- Spring Security has been implemented for user authentication.\n- Passwords are securely stored using hashing techniques.\n\n## API Endpoints\n- **Product Endpoints:**\n  - `GET /api/products`: Retrieve the list of products\n  - `POST /api/cart`: Add a product to the cart\n- **User Endpoints:**\n  - `POST /api/auth/login`: User login\n  - `POST /api/auth/logout`: User logout\n  - `GET /api/orders`: View user order history\n\n## Future Enhancements\n- Implement product search and filtering.\n- Add order tracking status.\n- Improve UI/UX for a better user experience.\n\n## Contributing\nFeel free to fork this project and submit pull requests. All contributions are welcome.\n\n## License\nThis project is licensed under the MIT License.\n\n---\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjacob-majesty%2Fecommerce","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjacob-majesty%2Fecommerce","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjacob-majesty%2Fecommerce/lists"}