The amazing team:
BioFood is a web service/application to help people find the right and organic local food available near to their place. It also helps all the producers and local farmers who register in our website to be recognized. Everyone's happy. Win-Win.
These two diagrams show the flow of our website for a farmer and for a customer. They show the different behaviours they can have while exploring and using BioFood:
This is the page for adding the products. The farmers will use this page to give the description of their products, their location, etc.
For users who want to find local products. They can browse and explore all the available products and find the one they are looking for.
This page gives to users general information about agriculture in Finland, particularely about farms and local products.
The user can use it to find the nearest place to buy the desired products.
The environment we are using to develop this web application is node.js. Node js is a development stack used to build fast, scalable and efficient applications. It is lightweight that makes it suitable for real time web applications. It basically uses java script and is fast in handling requests. To set up a development environment, Node js uses the powerful npm tool to install 3rd party addons. For our application, we are using yeoman generator to create an expressjs-based starting point. As part of the Node js development stack, we also use MongoDB which is a document database that provides high performance, high availability, and easy scalability.
For this codecamp, we have used the online collaborative platform called cloud9 that provides a web based development environment for our Node js application without a need to install all required software locally on our machines.
The main or backbone programming language that is used is JavaScript. MongoDb is used to store the data in our application. Additionally HTML5 and CSS3 are used.
Node Js used to develop a RESTful API. If someone wants to develop a REST API, the Node will be of a good option. It allows a platform-independent (the only requirement is the ability to use HTTP connection), Language independent (client & server don’t have to use the same implementation) and Standards based (HTTP!) implementation. It is not recommended to use Node Js in application that requires complex processing with long running processes. It does not really supporting multi-core of the processor rather runs single threaded.