Skip to content

L'Artisan Culinaire is a premium restaurant website built with Angular, featuring a sophisticated design that reflects the elegance and craftsmanship of fine dining. The application showcases the restaurant's culinary masterpieces, philosophy, and commitment to excellence through an immersive digital experience.

Notifications You must be signed in to change notification settings

Tuhin-SnapD/Angular-Restaurant-App

Repository files navigation

L'Artisan Culinaire - Elegant Restaurant Website

L'Artisan Culinaire Angular TypeScript

A sophisticated, elegant website for an artisanal restaurant showcasing culinary excellence and luxury dining experiences.


🍷 Overview

L'Artisan Culinaire is a premium restaurant website built with Angular, featuring a sophisticated design that reflects the elegance and craftsmanship of fine dining. The application showcases the restaurant's culinary masterpieces, philosophy, and commitment to excellence through an immersive digital experience.

✨ Key Features

  • Elegant Design System: Luxury color palette with gold, burgundy, and charcoal themes
  • Responsive Layout: Fully responsive design optimized for all devices
  • Interactive Components: Smooth animations and hover effects
  • Professional Typography: Custom fonts (Playfair Display, Cormorant Garamond, Montserrat)
  • Modern UI/UX: Material Design components with custom styling
  • Performance Optimized: Fast loading and smooth interactions

🎨 Design Philosophy

The website embodies the essence of artisanal cuisine through:

  • Luxury Aesthetics: Sophisticated color schemes and premium visual elements
  • Craftsmanship Focus: Attention to detail in every component and interaction
  • Seasonal Excellence: Emphasis on fresh, local ingredients and seasonal menus
  • Curated Experience: Every element designed to create an unforgettable journey

πŸš€ Getting Started

Prerequisites

  • Node.js (v16 or higher)
  • npm (v8 or higher) or yarn (v1.22 or higher)
  • Angular CLI (v16 or higher)

Installation

  1. Clone the repository

    git clone https://github.com/tuhin-snapd/angular-restaurant-app.git
    cd angular-restaurant-app
  2. Install dependencies

    npm install
    # or
    yarn install
  3. Start the development server

    ng serve
  4. Open your browser Navigate to http://localhost:4200/ to view the application.


πŸ“ Project Structure

src/
β”œβ”€β”€ app/
β”‚   β”œβ”€β”€ about/                 # About page component
β”‚   β”œβ”€β”€ contact/               # Contact page component
β”‚   β”œβ”€β”€ dishdetail/            # Dish detail component
β”‚   β”œβ”€β”€ footer/                # Footer component
β”‚   β”œβ”€β”€ header/                # Header component
β”‚   β”œβ”€β”€ home/                  # Home page component
β”‚   β”œβ”€β”€ menu/                  # Menu page component
β”‚   β”œβ”€β”€ services/              # Angular services
β”‚   β”œβ”€β”€ shared/                # Shared models and constants
β”‚   β”œβ”€β”€ directives/            # Custom directives
β”‚   └── app-routing/           # Routing configuration
β”œβ”€β”€ assets/                    # Static assets
β”œβ”€β”€ environments/              # Environment configurations
└── styles.scss               # Global styles and theming

πŸ› οΈ Technologies Used

Frontend Framework

  • Angular 16 - Progressive web application framework
  • TypeScript - Type-safe JavaScript development
  • Angular Material - Material Design components
  • Flex Layout - Responsive layout system

Styling & Design

  • SCSS/Sass - Advanced CSS preprocessing
  • Google Fonts - Typography (Playfair Display, Cormorant Garamond, Montserrat)
  • Font Awesome - Icon library
  • CSS Grid & Flexbox - Modern layout techniques

Development Tools

  • Angular CLI - Command-line interface
  • Karma & Jasmine - Unit testing framework
  • Protractor - End-to-end testing
  • ESLint - Code linting

🎯 Features

🏠 Home Page

  • Hero Section: Elegant introduction with restaurant branding
  • Featured Content: Showcase of signature dishes, promotions, and chef highlights
  • Philosophy Section: Three pillars of culinary excellence
  • Luxury Badges: Michelin Starred, Farm to Table, Artisanal

πŸ“‹ Menu Page

  • Culinary Masterpieces: Grid layout showcasing all dishes
  • Interactive Cards: Hover effects and image overlays
  • Chef's Selection: Curated menu items with luxury badges
  • Responsive Grid: Adaptive layout for all screen sizes

ℹ️ About Page

  • Heritage Story: Rich history and tradition
  • Excellence in Numbers: Key statistics and achievements
  • Culinary Leadership: Meet the master chefs
  • Inspirational Quote: Chef's philosophy and vision

πŸ“ž Contact Page

  • Contact Information: Location, hours, and contact details
  • Interactive Forms: User feedback and inquiries
  • Professional Layout: Clean and accessible design

🎨 Design System

Color Palette

  • Gold (#D4AF37) - Primary accent color
  • Burgundy (#8B2635) - Secondary accent color
  • Charcoal (#2C2C2C) - Primary text color
  • Cream (#FDF6E3) - Background color
  • Ivory (#FFFFF0) - Card background color

Typography

  • Playfair Display - Headings and titles
  • Cormorant Garamond - Body text and descriptions
  • Montserrat - UI elements and navigation

Components

  • Luxury Cards - Elevated card design with shadows and hover effects
  • Gradient Backgrounds - Sophisticated color transitions
  • Interactive Elements - Smooth animations and transitions
  • Luxury Badges - Premium styling for special indicators

πŸ”§ Development

Available Scripts

# Development server
ng serve

# Build for production
ng build --prod

# Run unit tests
ng test

# Run end-to-end tests
ng e2e

# Lint code
ng lint

# Generate component
ng generate component component-name

Code Style

The project follows Angular style guidelines and best practices:

  • TypeScript strict mode enabled
  • ESLint configuration for code quality
  • Prettier for consistent formatting
  • Angular Material design system

πŸ“± Responsive Design

The application is fully responsive and optimized for:

  • Desktop (1200px+)
  • Tablet (768px - 1199px)
  • Mobile (320px - 767px)

Breakpoints

  • xs: 0px - 599px
  • sm: 600px - 959px
  • md: 960px - 1279px
  • lg: 1280px - 1919px
  • xl: 1920px+

πŸ§ͺ Testing

Unit Tests

ng test
  • Component testing with Jasmine
  • Service testing
  • Directive testing

End-to-End Tests

ng e2e
  • User journey testing
  • Cross-browser compatibility
  • Performance testing

πŸš€ Deployment

Production Build

ng build --prod

Deployment Options

  • Netlify: Drag and drop dist/ folder
  • Vercel: Connect GitHub repository
  • Firebase Hosting: Use Firebase CLI
  • AWS S3: Upload to S3 bucket

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Development Guidelines

  • Follow Angular style guide
  • Write meaningful commit messages
  • Include tests for new features
  • Update documentation as needed

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


πŸ™ Acknowledgments

  • Angular Team - For the amazing framework
  • Material Design - For the design system
  • Google Fonts - For beautiful typography
  • Font Awesome - For the icon library

πŸ“ž Support

For support and questions:


Made with ❀️ for culinary excellence

L'Artisan Culinaire - Where culinary artistry meets timeless elegance

About

L'Artisan Culinaire is a premium restaurant website built with Angular, featuring a sophisticated design that reflects the elegance and craftsmanship of fine dining. The application showcases the restaurant's culinary masterpieces, philosophy, and commitment to excellence through an immersive digital experience.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published