{"id":24763269,"url":"https://github.com/xerx81/littlelemon","last_synced_at":"2026-04-10T13:31:45.990Z","repository":{"id":273821646,"uuid":"920962603","full_name":"Xerx81/LittleLemon","owner":"Xerx81","description":"Web app made with react connected to LittleLemonAPi made with DRF.","archived":false,"fork":false,"pushed_at":"2025-06-03T09:58:32.000Z","size":4293,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-07T23:53:54.988Z","etag":null,"topics":["api","axios","frontend","html-css","javascript","react","vite","webapp"],"latest_commit_sha":null,"homepage":"https://xerx81.github.io/LittleLemon/","language":"JavaScript","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/Xerx81.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-01-23T04:46:18.000Z","updated_at":"2025-06-03T09:58:12.000Z","dependencies_parsed_at":"2025-03-23T14:41:04.433Z","dependency_job_id":null,"html_url":"https://github.com/Xerx81/LittleLemon","commit_stats":null,"previous_names":["xerx81/littlelemon-frontend"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Xerx81/LittleLemon","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xerx81%2FLittleLemon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xerx81%2FLittleLemon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xerx81%2FLittleLemon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xerx81%2FLittleLemon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Xerx81","download_url":"https://codeload.github.com/Xerx81/LittleLemon/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xerx81%2FLittleLemon/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278866935,"owners_count":26059670,"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","status":"online","status_checked_at":"2025-10-07T02:00:06.786Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["api","axios","frontend","html-css","javascript","react","vite","webapp"],"created_at":"2025-01-28T20:26:31.420Z","updated_at":"2025-10-07T23:53:55.492Z","avatar_url":"https://github.com/Xerx81.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Little Lemon Frontend (React)\n\nThis is the frontend for the Little Lemon web application, built using React and Vite. The application interacts with a Django REST Framework (DRF) backend to provide restaurant-related features like menu display and table booking.\n\n## Table of Contents\n- [Features](#features)\n- [Tech Stack](#tech-stack)\n- [Getting Started](#getting-started)\n- [Folder Structure](#folder-structure)\n- [Scripts](#scripts)\n- [API Integration](#api-integration)\n\n---\n\n## Features\n- Displays menu items fetched from the backend API.\n- Allows users to book tables via a booking form.\n- Fully responsive design.\n- React Router-based navigation.\n\n---\n\n## Tech Stack\n- **Frontend Framework:** React (with Vite)\n- **Styling:** CSS (external stylesheets)\n- **HTTP Client:** Axios\n\n---\n\n## Getting Started\n\n### Prerequisites\nEnsure you have the following installed on your system:\n- Node.js (v16 or higher)\n- npm or yarn\n\n### Installation\n1. Clone the repository:\n   ```bash\n   git clone \u003chttps://github.com/Xerx81/LittleLemon-Frontend\u003e\n   cd LittleLemon-Frontend\n   ```\n\n2. Install dependencies:\n   ```bash\n   npm install\n   ```\n\n3. Start the development server:\n   ```bash\n   npm run dev\n   ```\n\n4. Open the application in your browser at:\n   ```\n   http://localhost:5173\n   ```\n\n---\n\n## Folder Structure\n```plaintext\nlittlelemon-frontend/\n├── public/                # Static files\n│   ├── favicon.ico\n├── src/                   # Main source code\n│   ├── assets/            # Images and assets\n│   ├── components/        # Reusable React components\n│   ├── pages/             # Page components for routes\n│   ├── styles/            # CSS files\n│   ├── App.jsx            # Main app component\n│   ├── main.jsx           # Entry point\n├── index.html             # HTML template\n├── package.json           # Dependencies and scripts\n├── vite.config.js         # Vite configuration\n```\n\n---\n\n## Scripts\n- **Start Development Server:**\n  ```bash\n  npm run dev\n  ```\n- **Build for Production:**\n  ```bash\n  npm run build\n  ```\n- **Preview Production Build:**\n  ```bash\n  npm run preview\n  ```\n\n---\n\n## API Integration\nThe frontend communicates with the backend through RESTful APIs. Ensure the backend is running before starting the frontend.\n\n### Example API Endpoints:\n- **Menu Items:** `GET /restaurant/menu/items/`\n- **Single Menu Item:** `GET /restaurant/menu/items/:id/`\n- **Bookings:** `POST /restaurant/booking/tables/`\n\nUpdate the base URL in Axios if necessary:\n```javascript\naxios.defaults.baseURL = 'http://127.0.0.1:8000';\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxerx81%2Flittlelemon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxerx81%2Flittlelemon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxerx81%2Flittlelemon/lists"}