Skip to content

genz-Dev-dev/project_ui_user

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

14 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🎣 Fishing Store

A modern, responsive e-commerce web application built with Vue.js for fishing enthusiasts. This application provides a complete online shopping experience for fishing gear, equipment, and accessories.

✨ Features

πŸ›’ E-commerce Functionality

  • Product Catalog: Browse fishing equipment and gear
  • Shopping Cart: Add, remove, and manage items
  • Order Processing: Complete purchase workflow
  • Customer Receipts: Digital receipt generation
  • Size Guide: Interactive sizing modal for products

πŸ‘€ User Management

  • User Authentication: Secure login and registration
  • User Profiles: Personal account management
  • Favorites System: Save preferred products
  • Order History: Track past purchases

🎨 User Experience

  • Responsive Design: Mobile-first approach with Tailwind CSS
  • Interactive Modals: Smooth user interactions
  • Category Navigation: Organized product browsing
  • Modern UI/UX: Clean and intuitive interface

πŸš€ Tech Stack

Frontend

  • Vue.js 3 - Progressive JavaScript framework
  • Vue Router - Official routing library
  • Pinia/Vuex - State management
  • Tailwind CSS - Utility-first CSS framework
  • lucide-vue-next - icons for use

Build Tools

  • Vite - Next generation frontend tooling
  • PHP - PHP runtime

Development

  • ES6+ - Modern JavaScript features
  • Component-based Architecture - Modular development
  • Single File Components - Vue SFC structure

πŸ“ Project Structure

fishing-store/
β”œβ”€β”€ πŸ“„ README.md                    # Project documentation
β”œβ”€β”€ πŸ“„ index.html                   # Main HTML template
β”œβ”€β”€ πŸ“¦ package.json                 # Dependencies and scripts
β”œβ”€β”€ βš™οΈ vite.config.js               # Vite configuration
β”œβ”€β”€ βš™οΈ tailwind.config.js           # Tailwind CSS configuration
β”œβ”€β”€ πŸ“ public/                      # Static assets
β”‚   β”œβ”€β”€ πŸ–ΌοΈ fishingLogo.png         # Application logo
β”‚   └── πŸ–ΌοΈ vite.svg                # Vite logo
└── πŸ“ src/                         # Source code
    β”œβ”€β”€ πŸ“„ App.vue                  # Root component
    β”œβ”€β”€ πŸ“„ main.js                  # Application entry point
    β”œβ”€β”€ 🎨 style.css                # Global styles
    β”œβ”€β”€ πŸ“ assets/                  # Project assets
    β”‚   β”œβ”€β”€ πŸ–ΌοΈ vue.svg             # Vue logo
    β”‚   β”œβ”€β”€ πŸ–ΌοΈ preview.png         # Preview images
    β”‚   └── πŸ–ΌοΈ preview_add.png
    β”œβ”€β”€ πŸ“ components/              # Reusable components
    β”‚   β”œβ”€β”€ 🧩 navbar.vue          # Navigation bar
    β”‚   β”œβ”€β”€ 🧩 footer.vue          # Footer component
    β”‚   └── 🧩 modal_form.vue      # Modal form component
    β”œβ”€β”€ πŸ“ router/                  # Routing configuration
    β”‚   └── πŸ“„ index.js            # Route definitions
    β”œβ”€β”€ πŸ“ stores/                  # State management
    β”‚   └── πŸ“„ auth.js             # Authentication store
    └── πŸ“ views/                   # Page components
        β”œβ”€β”€ 🏠 homePage.vue         # Home page
        β”œβ”€β”€ πŸ›’ card.vue             # Shopping cart
        β”œβ”€β”€ πŸ“‹ order_product.vue    # Order processing
        β”œβ”€β”€ 🧾 customer_receipt.vue # Receipt view
        β”œβ”€β”€ πŸ“ Size_Guide_Modal.vue # Size guide modal
        β”œβ”€β”€ πŸ”§ modal.vue            # Generic modal
        β”œβ”€β”€ πŸ“ categories/          # Category-related views
        β”‚   β”œβ”€β”€ ❀️ add_favorite.vue # Add to favorites
        β”‚   β”œβ”€β”€ πŸ“‹ cate_demo.vue    # Category demo
        β”‚   └── πŸ“„ cate_detail.vue  # Category details
        └── πŸ“ mod/                 # Module components
            β”œβ”€β”€ πŸ” AuthModal.vue    # Authentication modal
            β”œβ”€β”€ πŸ” AuthView.vue     # Authentication view
            β”œβ”€β”€ ❀️ FavoriteButton.vue # Favorite button
            └── πŸ‘€ Registration_user.vue # User registration

πŸ“‹ Prerequisites

Before running this project, make sure you have the following installed:

  • Node.js (v22.12.0 or higher)
  • npm (v8.0.0 or higher) or yarn
  • Git for version control

πŸ› οΈ Installation

  1. Clone the repository

    git clone https://github.com/yourusername/fishing-store.git
    cd fishing-store
  2. Install dependencies

    npm install
    # router
    npm install vue-router
    # icon
    npm install lucide-vue-next
    # axios
    npm install axios
  3. Environment setup (if needed)

    cp .env.example .env
    # Edit .env file with your configuration

🚦 Development

Start Development Server

npm run dev
# or
yarn dev

The application will be available at http://localhost:5173

Available Scripts

  • npm run dev - Start development server
  • npm run build - Build for production
  • npm run preview - Preview production build locally
  • npm run lint - Run ESLint
  • npm run format - Format code with Prettier

πŸ—οΈ Building for Production

npm run build
# or
yarn build

The built files will be in the dist/ directory, ready for deployment.

🧩 Project Components

Core Components

Component Description
App.vue Root application component
navbar.vue Main navigation bar
footer.vue Site footer
modal_form.vue Reusable modal form

Views

View Purpose
homePage.vue Landing page with featured products
card.vue Shopping cart management
order_product.vue Order processing and checkout
customer_receipt.vue Order confirmation and receipt

Authentication

Component Functionality
AuthModal.vue Login/signup modal
AuthView.vue Authentication page
Registration_user.vue User registration form

Features

Component Feature
add_favorite.vue Add products to favorites
FavoriteButton.vue Toggle favorite status
Size_Guide_Modal.vue Product sizing information

πŸ“± Screenshots

Add screenshots of your application here

  • Homepage
  • Product catalog
  • Shopping cart
  • User authentication
  • Mobile responsive views

🀝 Contributing

We welcome contributions to the Fishing Store project! Here's how you can help:

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

Development Guidelines

  • Follow Vue.js best practices
  • Use Tailwind CSS for styling
  • Write clear, descriptive commit messages
  • Add comments for complex logic
  • Test your changes thoroughly

πŸ“„ License

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

πŸ“ž Support

If you have any questions or need help getting started

πŸ™ Acknowledgments

  • Vue.js community for the amazing framework
  • Tailwind CSS team for the utility-first CSS framework
  • All contributors who help improve this project

Happy Fishing! 🎣

Built with ❀️ for the fishing community

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages