{"id":23176559,"url":"https://github.com/vinsgiordi/ingsw-project","last_synced_at":"2026-02-24T03:05:24.232Z","repository":{"id":267804053,"uuid":"832186424","full_name":"vinsgiordi/INGSW-Project","owner":"vinsgiordi","description":"An Android application developed with Node.js, Express, and Flutter, designed to facilitate real-time online auctions. Users can create listings, place bids, and complete transactions, with a microservices architecture supported by PostgreSQL and Docker containers. Built for the Software Engineering course at the University of Naples \"Federico II.\"","archived":false,"fork":false,"pushed_at":"2024-12-16T07:56:31.000Z","size":436612,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"develop","last_synced_at":"2025-06-01T21:47:20.201Z","etag":null,"topics":["aws","dart","docker","docker-compose","docker-image","flutter","flutter-apps","ingsw","javascript","node","nodejs","projects"],"latest_commit_sha":null,"homepage":"","language":"Dart","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/vinsgiordi.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":"2024-07-22T13:54:11.000Z","updated_at":"2025-01-04T14:03:36.000Z","dependencies_parsed_at":null,"dependency_job_id":"d0735193-6726-4a6b-8989-dde263c37845","html_url":"https://github.com/vinsgiordi/INGSW-Project","commit_stats":null,"previous_names":["vinsgiordi/ingsw-project"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/vinsgiordi/INGSW-Project","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vinsgiordi%2FINGSW-Project","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vinsgiordi%2FINGSW-Project/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vinsgiordi%2FINGSW-Project/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vinsgiordi%2FINGSW-Project/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vinsgiordi","download_url":"https://codeload.github.com/vinsgiordi/INGSW-Project/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vinsgiordi%2FINGSW-Project/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263245241,"owners_count":23436510,"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":["aws","dart","docker","docker-compose","docker-image","flutter","flutter-apps","ingsw","javascript","node","nodejs","projects"],"created_at":"2024-12-18T06:17:11.659Z","updated_at":"2025-10-26T19:06:27.616Z","avatar_url":"https://github.com/vinsgiordi.png","language":"Dart","funding_links":[],"categories":[],"sub_categories":[],"readme":"# INGSW-Project\nThis repository contains an Android application, developed using Node.js / Express and Flutter, with the intention of creating a platform for managing online auctions. This application was developed as part of the \"Software Engineering\" course taught by professors Sergio Di Martino, Francesco Cutugno, and Luigi Libero Lucio Starace at the University of Naples \"Federico II\".\n\n## Overview\n\n**DietiDeals24** is a real-time auction application designed to facilitate buying and selling between users through an auction system. Users can create listings, bid on products, receive real-time notifications, and complete transactions with various payment methods.\n\nThe app is built with a microservices architecture, separating the frontend (built with Flutter) and backend (built with Node.js and Express). Both the backend and database are hosted within Docker containers for easier environment management.\n\n## Technologies Used\n\n### Backend\n- **Node.js** with **Express.js** for managing APIs and business logic.\n- **PostgreSQL** as the relational database to store user, product, and transaction data.\n- **Sequelize** as the ORM to manage and interact with the database.\n- **Docker** for containerization, simplifying deployment and configuration.\n- **Cron Jobs** for automatic auction management.\n\n### Frontend\n- **Flutter** for a native-like user interface across different platforms.\n\n## Getting Started\n\nBefore starting, ensure you have installed:\n\n1. **Node.js** (recommended version 14 or higher)\n2. **Flutter** (version 2.0 or higher) for the frontend\n3. **Docker and Docker Compose** to manage containers\n4. **DBeaver or pgAdmin** (optional, for database management)\n\n## Installation Instructions\n\n### 1. Clone the Repository\n\n```bash\ngit clone https://github.com/vinsgiordi/INGSW-Project.git\ncd INGSW-Project\n```\n\n### 2. Backend Setup\nGo to the backend directory on your IDE (VSCode or similar)\n```bash\ncd backend\n```\nCreate a **.env** file in the backend directory with the following environment variables (note .env.example for more information)\n\n### 3. Frontend Setup\nGo to the frontend directory on your IDE (It is recommended to use Android Studio for a more comfortable experience)\n```bash\ncd frontend\n```\nNavigate within the requests and replace the base url in case you are hosting the server locally.\n\n### 4. Start Docker Containers\nGo back to the main directory and use Docker Compose to start the containers:\n```bash\ndocker-compose up --build\n```\nThis command will build and start containers for the backend and the PostgreSQL database.\n\n## Running and Development\n\n### 1. Backend: The backend is started automatically with Docker. If you want to start it manually:\n```bash\ncd backend\nnpm start\n```\n### 2. Frontend: Run the Flutter application:\n```bash\ncd frontend\nflutter clean\nflutter pub get\nflutter run\n```\n\n## Database Management\n### Connecting to the Database\nYou can access the database through DBeaver or pgAdmin using the following connection details (assuming you’ve configured an external port for Docker):\n- **Host:** localhost or container IP;\n- **Port:** 54320 or similar;\n- **User:** your-username;\n- **Password:** your-password;\n- **Database:** database-name;\n\n## Contributing\n\nContributions to this repository are welcome! If you have suggestions for improvements, bug fixes, or new features, please open an issue or submit a pull request.\n\n## License\n\nThis repository is licensed under the [MIT License](LICENSE).\n\n## Contact\n\nFor any inquiries or assistance, feel free to contact [vincenzogiordano99@libero.it](mailto:your-email@example.com).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvinsgiordi%2Fingsw-project","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvinsgiordi%2Fingsw-project","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvinsgiordi%2Fingsw-project/lists"}