Skip to content

zaietsmo/restaurant-manager

Repository files navigation

Restaurant Kitchen Manager

Welcome to the Restaurant Kitchen Manager! This Django-based web application allows restaurant managers to efficiently manage their kitchen operations, including handling dishes, dish types, and cooks. Streamline your kitchen management processes with an intuitive and user-friendly interface.

📌 Table of Contents

Demo

Experience the Restaurant Kitchen Manager in action! Visit the live website:

🔗 Restaurant Kitchen Manager

Use the following credentials to log in as a test user:

  • Login URL: https://restaurant-kitchen-manager.onrender.com/accounts/login/
  • Username: user
  • Password: user

Features

  • User Authentication
    • Register as a cook.
    • Secure login and logout functionalities.
  • Dish Management
    • Create, view, update, and delete dishes.
    • Assign multiple cooks to a dish.
  • Dish Type Management
    • Organize dishes by types (e.g., Soup, Cake, Pasta).
  • Cook Management
    • View detailed information about each cook, including their experience and assigned dishes.
  • Search and Filtering
    • Search for dishes by name.
    • Filter dishes by dish type.
  • Responsive Design
    • Built with Bootstrap for a seamless experience across devices.

Installation

Follow these steps to set up the project locally:

1. Clone the Repository

git clone https://github.com/zaietsmo/restaurant-manager.git
cd restaurant-manager

2. Create a Virtual Environment

It's recommended to use a virtual environment to manage dependencies.

python -m venv venv

Activate the virtual environment:

  • Windows:

    venv\Scripts\activate
  • macOS and Linux:

    source venv/bin/activate

3. Install Dependencies

Install the required Python packages using pip:

pip install -r requirements.txt

4. Configure Environment Variables

Create a .env file in the root directory of the project and add the necessary environment variables. Here's an example of what the .env file might look like:

DEBUG=True
SECRET_KEY=your-secret-key
ALLOWED_HOSTS=localhost,127.0.0.1
DATABASE_URL=sqlite:///db.sqlite3

Note: Replace your-secret-key with a secure secret key. In a production environment, ensure that DEBUG is set to False and configure ALLOWED_HOSTS appropriately.

5. Apply Migrations

Create the necessary database tables:

python manage.py migrate

6. Load Initial Data (Optional)

If you have a fixture (dump.json) with initial data, you can load it using:

python manage.py loaddata dump.json

7. Create a Superuser (Optional)

To access the Django admin interface, create a superuser:

python manage.py createsuperuser

Follow the prompts to set up your superuser account.

8. Run the Development Server

Start the Django development server:

python manage.py runserver

Visit http://127.0.0.1:8000/ in your browser to access the application.

Usage

Once the development server is running, navigate to the live site or your local server address. You can perform the following actions:

  • Register as a Cook: Create a new cook account.
  • Login: Access the dashboard with your credentials.
  • Manage Dishes: Add, edit, view, or delete dishes.
  • Manage Dish Types: Organize dishes by their types.
  • View Cooks: See information about each cook and their assigned dishes.

Technologies Used

Contributing

Contributions are welcome! Please follow these steps to contribute:

  1. Fork the Repository

  2. Create a New Branch

    git checkout -b feature/YourFeatureName
  3. Make Changes and Commit

    git commit -m "Add some feature"
  4. Push to the Branch

    git push origin feature/YourFeatureName
  5. Open a Pull Request

Provide a clear description of your changes and the benefits they bring.

License

This project is licensed under the MIT License.

Contact

For any inquiries or support, feel free to reach out:


Enjoy managing your restaurant kitchen efficiently!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages