Farmery is an open-source cultivation management system based on NodeJS, Vue.JS, and MongoDB. We started to develop it in November 2020, because we want to build an open-source cultivation management system for every farmer around the world can apply technology to improve their business, where we have to connect various sensors, smart devices, task management, and automation processes for farming and manage it while we are on the go. If you are a farm owner, scientist, grower, or researcher, you can manage your farm easily with Farmery. We know that it’s still a small project. Therefore, we are very open if you want to collaborate with us and make this project bigger. Contact us dmtan@agrhub.com You can try the online version, by access to this page http://farmery.agrhub.com Demo account: dmtan90@gmail.com pass: admin@123 If you have any request or cooperation, please email us dmtan@agrhub.com
- Vue family bucket (Vue + VueRouter + Vuex + some Vue components)
- Element UI
- Preprocessor: Stylus, Pug, Babel
- Echarts
- Full calendar
- Gantt elastic
- Koa2
- Monitoring: fundebug
- Log: Log4js
- Timer: node-schedule
- MongoDB
- DAO: Mongoose
- ESP32
- nRF528xx
- Sense Hub Gateway
- Sense Hydro Pro
- Sense Air Basic
- Sense CO2
- Xiaomi Flower Care
- Xiaomi Hydrometer
- Nginx (site server)
- PM2 (site server)
- Aedes (MQTT client)
- Eclipse Mosquitto (MQTT Server)
- Docker + Docker compose (install Eclipse Mosquitto + Eclipse Streamsheets)
HTTP: Axios
MQTT: Promise + MQTT communication framework
Encryption algorithm: Bcrypt + secondary salting
Communication: JWT
Code specification: ESLint
Time processing: moment
-
Before starting the project, you need to install all prerequisites first
- NodeJS 12+ (https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-ubuntu-18-04)
- MongoDB 4+ (https://www.digitalocean.com/community/tutorials/how-to-install-mongodb-on-ubuntu-18-04-source)
- Docker(https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-18-04) + Docker Compose (https://www.digitalocean.com/community/tutorials/how-to-install-docker-compose-on-ubuntu-18-04)
- Eclipse Mosquitto + Eclipse Streamsheets (https://wiki.instar.com/en/Frequently_Asked_Question/Mosquitto_2.0_with_Management_Dashboard/)
- AdminMongo for management on web (https://github.com/mrvautin/adminMongo)
-
npm install (install all required npm modules)
-
Modify the following configuration files in the config folder to
- file.json
- key.json
- db.json
- mqtt.json
-
Turn on the front-end server
npm run serve (development) npm run build (productivity)
- Start backend and files management
nohup ./pm2.sh &
!License: CC BY-NC 4.0](https://creativecommons.org/licenses/by-nc/4.0/)