This application is intended to both educate and provide a platform for beekeepers to manage their hives and apiaries. It allows beekeepers to log various details about their hives, and then use this data to generate a graph showing changes over the season.
The BMaster application includes several features designed to assist beekeepers in managing their hives:
The BMaster application includes an API that allows other systems to retrieve data about the hives. The API provides endpoints to get data for a specific hive, get data for all hives for a specific beekeeper, and get data for a specific season.
Developers contributing to the BMaster project should adhere to the following guidelines:
Future improvements to the BMaster application may include enhancements to existing features or the addition of new ones. Developers are encouraged to contribute to these improvements by keeping this documentation up to date and following the guidelines provided.
The BMaster module includes the following routes:
The 'base' function serves as the root of the chained actions in the BMaster controller. It captures '/BMaster' in the URL and performs common setup tasks that are shared by multiple actions in the controller. This function is crucial for avoiding code duplication and enhancing code maintainability and readability. Here are some tasks that the 'base' function can perform:
The 'index' function sets the template to 'BMaster/BMaster.tt' and forwards to the TT view. This function is responsible for rendering the main page of the BMaster section.
The 'frames' function retrieves the frames for a specified queen and sets the template to 'BMaster/frames.tt'. This function is used to display the frames associated with a particular queen bee.
The 'api_frames' function fetches the data for the frames and sets the response body to the JSON representation of the data. This function is used to provide a JSON API for accessing frame data.
The 'products' function sets the template to 'BMaster/products.tt'. This function is used to render the page that displays the products of the BMaster.
The 'yards' function retrieves the yards and sets the template to 'BMaster/yards.tt'. This function is used to display the yards associated with the BMaster.
The 'apiary' function sets the template to 'BMaster/apiary.tt'. This function is used to render the page that displays the apiary of the BMaster.
The 'queens' function sets the template to 'BMaster/Queens.tt'. This function is used to render the page that displays the queens of the BMaster. It also calculates and displays the graft dates for each queen.
The 'hive' function sets the template to 'BMaster/hive.tt'. This function is used to render the page that displays the hives of the BMaster.
The 'honey' function sets the template to 'BMaster/honey.tt'. This function is used to render the page that displays the honey products of the BMaster.
The 'beehealth' function sets the template to 'BMaster/beehealth.tt'. This function is used to render the page that displays the health status of the bees in the BMaster.
The 'environment' function sets the template to 'BMaster/environment.tt'. This function is used to render the page that displays the environmental conditions of the BMaster.
The 'education' function sets the template to 'BMaster/education.tt'. This function is used to render the page that displays the educational resources of the BMaster.
This function fetches the frames for a given queen based on the queen's tag number. It returns a reference to an array of frames.
This function fetches all yards for a given site based on the site's name. It returns a reference to an array of yards.
Our queen management system is designed to manage the lifecycle of the queen bees in our apiary. Here are the key activities and their timelines:
| Date | Activity |
|---|---|
| Graft date | The date when the grafting process starts. |
| 3 days after graft date | Move the brood back from the incubator and count the number of cells that have been started. |
| 10 days after graft date | Move the cells to the mating nucs. |
| 20 days after graft date | The queen will have been mated and start laying. |
| Queen pull | The number of days entered in the form egg laying day. |
| Second graft | Done 10 days before the queen pull. |
We store the graft date and the number of days of egg laying in the database. This helps us to track and manage the lifecycle of each queen bee.