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.
- 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
The application follows a microservices architecture with the following components:
- Built with React for a responsive, modern user interface
- Styled using Tailwind CSS and Material UI components
- Interactive maps powered by Mapbox GL
- 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
- Integrated within the StarkNet ecosystem for secure and efficient transactions
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)
-
Clone the repository:
git clone https://github.com/Servora/servicemgtapp.git cd servicemgtapp -
Install dependencies:
npm install
-
Create an environment file:
cp .env.example .env
-
Update the .env file with the required configurations:
- MongoDB connection string
- Redis connection details
- JWT secret key
- Mapbox API token
-
Start the development server:
npm run dev
-
Build the project:
npm run build
-
Start the production server:
npm start
The application can be run using Docker for consistent deployment across environments:
docker-compose up --buildThis will start all required services including:
- Web frontend
- Service providers API
- Consumers API
- MongoDB database
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
Contributions are welcome! Please follow these steps:
- Fork the repository
- Create a new branch (
git checkout -b feature-branch) - Commit your changes (
git commit -m 'Add new feature') - Push to the branch (
git push origin feature-branch) - Open a Pull Request
© 2023 StarkNet Service and Management. All rights reserved.
Built with ❤️ by the StarkNet Service and Management Team