BioBloom is a comprehensive agricultural technology platform designed to help farmers and agricultural enthusiasts make informed decisions about their farming practices. The platform combines modern web technologies with agricultural expertise to provide a suite of tools and features for sustainable farming.
-
User Authentication System
- Secure login and registration
- Profile management
- Password recovery system
-
Agricultural Insights
- Crop recommendations
- Air Quality Index (AQI) monitoring
- Weather information integration
- Sustainable farming practices
-
Interactive Dashboard
- Real-time data visualization
- Saved searches functionality
- Customizable user experience
-
Frontend:
- HTML5
- CSS3
- JavaScript
- Chart.js for data visualization
-
Backend:
- Node.js
- Express.js
- MongoDB (Database)
-
Additional Tools:
- Environmental monitoring APIs
- Weather data integration
- Authentication system
- Node.js (v14 or higher)
- npm (Node Package Manager)
- MongoDB
- Clone the repository
git clone https://github.com/yourusername/biobloom.git
- Install NPM packages
npm install
- Create a
.env
file in the root directory and add your environment variables
PORT=your_port
MONGODB_URI=your_mongodb_uri
JWT_SECRET=your_jwt_secret
SESSION_SECRET=some_secret_value
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
GROQ_API_KEY=your_groq_api_key
- Start the server
node server.js
biobloom/
├── agrisensex/ # Agricultural sensing components
├── agrirevive/ # Core application components
├── language/ # Localization files
├── routes/ # API routes
├── crop/ # Crop-related functionality
├── public/ # Static files
└── ...
-
User Management
- Secure authentication
- Profile customization
- Password reset functionality
-
Agricultural Tools
- Crop recommendation system
- Weather monitoring
- AQI tracking
- Sustainable farming guides
-
Data Visualization
- Interactive charts
- Real-time data updates
- Historical data analysis
This project is fully Dockerized for seamless setup and consistent deployment. Follow the steps below to run the application using Docker.
Make sure the following are installed on your system:
-
Clone the Repository
git clone https://github.com/<your-username>/Bloom.git cd Bloom
-
Build and Start Docker Containers
docker-compose up --build
This will:
-
Build the Docker image for the Node.js application using the Dockerfile
-
Start the Node.js app and MongoDB services using docker-compose.yml
-
Apply environment variables from your .env file (if configured)
-
Mount persistent storage for MongoDB (as configured)
-
Ensure consistent container-based environment across development and production
- Access the Application
Open your browser and go to: http://localhost:3000
Replace the port if configured differently in docker-compose.yml
- Stop the Application
To stop the application and remove containers:
docker-compose down
To also remove volumes and networks:
docker-compose down -v
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- 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
Distributed under the MIT License. See LICENSE
for more information.
Your Name - @yourusername
Project Link: https://github.com/yourusername/biobloom