ArtisanHub is a comprehensive mobile platform designed to empower artisans by providing tools for business management, portfolio showcasing, job connection, and skills training.
- User Authentication: Secure Login and Sign Up functionality.
- Dashboard: Centralized hub for accessing various tools and services.
- Business Suite: Tools to manage artisan business operations.
- Digital Tools: Access to digital resources.
- Job Connect: Browse and apply for job opportunities.
- Skills Training: Access training modules and resources.
- Portfolio Management: Showcase work through a digital portfolio.
- Real-time Chat: Communication features using Socket.io.
- Analytics: insights and performance metrics.
- Framework: React Native with Expo
- Language: TypeScript
- Styling: Tailwind CSS (via NativeWind)
- Navigation: React Navigation
- State/Networking: Axios, React Hooks
- Runtime: Node.js
- Framework: Express.js
- Database: MongoDB (with Mongoose)
- Authentication: JWT (JSON Web Tokens) & bcryptjs
- Real-time: Socket.io
- Node.js (v14 or higher)
- npm or yarn
- Expo Go app on your mobile device (iOS/Android) or an Emulator
git clone <repository-url>
cd AgritechNavigate to the backend directory, install dependencies, and start the server.
cd backend
npm installCreate a .env file in the backend directory with your configuration (e.g., MONGODB_URI, JWT_SECRET, PORT).
# Start the backend server
npm start
# OR for development (with nodemon)
npm run devThe backend typically runs on http://localhost:5000 (check index.js or logs).
Navigate to the frontend directory, install dependencies, and start the Expo app.
cd ../frontend
npm install
npm startThis command will start the Metro bundler. You can:
- Scan the QR code with the Expo Go app on your phone.
- Press
ato run on an Android Emulator. - Press
ito run on an iOS Simulator. - Press
wto run in the web browser.
Agritech/
├── backend/ # Node.js/Express API and Database logic
│ ├── controllers/ # Request handlers
│ ├── models/ # Mongoose schemas
│ ├── routes/ # API routes
│ └── index.js # Entry point
│
├── frontend/ # React Native Expo App
│ ├── src/
│ │ ├── api/ # API integration
│ │ ├── components/ # Reusable UI components
│ │ ├── screens/ # Application screens (Dashboard, Profile, etc.)
│ │ ├── navigation/ # Navigation configuration
│ │ └── context/ # React Context (Global State)
│ └── App.tsx # Main Entry point
│
└── README.md # Project Documentation
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Ai can be used in searching for jobs and matching artisans with jobs. AI can be layout out the roadmap with career path and skills to be acquired.
AI can be used to generate content for the app.
AI can be used to generate personalized learning paths for artisans based on their skills and career goals. AI can be used to generate personalized job recommendations for artisans based on their skills and career goals. AI can be used to generate personalized training recommendations for artisans based on their skills and career goals. AI can be used to generate personalized content for artisans based on their skills and career goals.