Skip to content

Ummi-001/servicemgtapp

 
 

Repository files navigation

StarkNet Service and Management

Overview

StarkNet Service and Management is a dynamic platform designed to simplify the process of connecting service providers with consumers. It addresses common challenges such as finding reliable providers, assessing service quality, and managing bookings efficiently. By creating a centralized marketplace, the platform makes it easy for consumers to browse various services and select those that best meet their needs.

Key Features

  • Interactive Marketplace: Browse and select from a diverse range of services with location-based search capabilities
  • Real-time Chat: Seamless communication between consumers and service providers using Socket.IO
  • Quality Assurance: Comprehensive rating and review mechanisms ensure reliable service delivery
  • Efficient Booking Management: Helps service providers expand their reach and coordinate appointments effectively
  • Location-Based Services: Find service providers near you with customizable search radius

Architecture

The application follows a microservices architecture with the following components:

Frontend

  • Built with React for a responsive, modern user interface
  • Styled using Tailwind CSS and Material UI components
  • Interactive maps powered by Mapbox GL

Backend

  • Node.js and Express for RESTful API services
  • MongoDB for persistent data storage
  • Redis for caching and real-time messaging support
  • Socket.IO for real-time bidirectional communication

StarkNet Integration

  • Integrated within the StarkNet ecosystem for secure and efficient transactions

Getting Started

Prerequisites

Ensure you have the following installed:

  • Node.js (v16 or later)
  • npm
  • MongoDB (local or remote connection)
  • Redis (optional, for enhanced real-time features)
  • Docker (optional, for running services in containers)

Installation

  1. Clone the repository:

    git clone https://github.com/Servora/servicemgtapp.git
    cd servicemgtapp
  2. Install dependencies:

    npm install
  3. Create an environment file:

    cp .env.example .env
  4. Update the .env file with the required configurations:

    • MongoDB connection string
    • Redis connection details
    • JWT secret key
    • Mapbox API token
  5. Start the development server:

    npm run dev

Running in Production

  1. Build the project:

    npm run build
  2. Start the production server:

    npm start

Docker Deployment

The application can be run using Docker for consistent deployment across environments:

docker-compose up --build

This will start all required services including:

  • Web frontend
  • Service providers API
  • Consumers API
  • MongoDB database

Project Structure

servicesmgtapi/
├── consumers-api/         # Consumer microservice
├── frontend/              # Frontend application (React)
├── on-chain/              # Smart contract folder
│   ├── contracts/         # Solidity smart contracts
│   ├── migrations/        # Migration scripts for deploying contracts
│   ├── test/              # Smart contract tests
│   ├── scripts/           # Deployment and interaction scripts
│   └── truffle-config.js  # Truffle configuration (if using Truffle)
├── servicerender-api/     # Service renderer microservice
├── blockchain-api/        # API for blockchain interactions
│   ├── src/
│   │   ├── controllers/   # Controllers for blockchain operations
│   │   ├── routes/        # API routes for blockchain interactions
│   │   ├── utils/         # Utility functions for web3/ethers
│   │   └── app.js         # Main application file
│   └── package.json       # Dependencies for blockchain API
├── .gitignore
├── README.md
└── contribution.md

Contributing

Contributions are welcome! Please follow these steps:

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

© 2023 StarkNet Service and Management. All rights reserved.

Built with ❤️ by the StarkNet Service and Management Team

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Cairo 45.3%
  • JavaScript 34.4%
  • TypeScript 18.0%
  • CSS 1.9%
  • HTML 0.4%