LibraryBox: Difference between revisions

From Berkman Klein Google Summer of Code Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
==Project Description==
http://librarybox.us


===Project Description===
LibraryBox is an international project that provides open source, portable digital file distribution tool based on inexpensive hardware that enables delivery of educational, healthcare, and other vital information to individuals off the grid. Used around the world in education, healthcare, and activism, the LibraryBox project attempts to provide an easy-to-implement tool for anyone that needs to distribute digital information where the infrastructure for such sharing is limited, damaged, controlled, or non-existent.
LibraryBox is an international project that provides open source, portable digital file distribution tool based on inexpensive hardware that enables delivery of educational, healthcare, and other vital information to individuals off the grid. Used around the world in education, healthcare, and activism, the LibraryBox project attempts to provide an easy-to-implement tool for anyone that needs to distribute digital information where the infrastructure for such sharing is limited, damaged, controlled, or non-existent.  


====Ideal candidate:====
===Ideal candidate===
The LibraryBox Project is interested in a variety of possible contributors, from web-front-end, usability, and design work that improve the user experience to Linux devs with networking and LAMP-stack-like experience. Possible interest in Android/iOS app development for Beacon responsiveness.  
The LibraryBox Project is interested in a variety of possible contributors, from web-front-end, usability, and design work that improve the user experience to Linux devs with networking and LAMP-stack-like experience. Possible interest in Android/iOS app development for Beacon responsiveness.


====Project ideas====
==Project ideas==


====LibraryBox on Raspberry Pi 3====
===LibraryBox on Raspberry Pi 3===
The existing hardware that LibraryBox uses is under threat from new FCC regulations (http://yro.slashdot.org/story/16/02/18/1423216/tp-link-begins-lockdown-of-firmware-in-response-to-fcc). We have been planning to port our code to a more robust platform, and it appears that now is the ideal time to do so. We will be looking for coders willing to work with the existing PirateBox Raspberry Pi installation (https://piratebox.cc/raspberry_pi) and work to modify it to work with the LibraryBox customizations (some of which is already in progress https://github.com/LibraryBox-Dev/LibraryBox-core/tree/master/piratebox_origin/BuildScripts/RaspberryPi). In addition, the newest Raspberry Pi hardware includes Bluetooth Low-Energy, which we would like to begin using this new capability as a Beacon (https://en.wikipedia.org/wiki/IBeacon) to do more active “announcing” of a LibraryBox.  
The existing hardware that LibraryBox uses is under threat from new FCC regulations (http://yro.slashdot.org/story/16/02/18/1423216/tp-link-begins-lockdown-of-firmware-in-response-to-fcc). We have been planning to port our code to a more robust platform, and it appears that now is the ideal time to do so. We will be looking for coders willing to work with the existing PirateBox Raspberry Pi installation (https://github.com/PirateBox-Dev/arch_rpi_image_prepare) and work to modify it to work with the LibraryBox customizations (some of which is already in progress https://github.com/LibraryBox-Dev/LibraryBox-core/tree/master/piratebox_origin/BuildScripts/RaspberryPi). In addition, the newest Raspberry Pi hardware includes Bluetooth Low-Energy, which we would like to begin using this new capability as a Beacon (https://en.wikipedia.org/wiki/IBeacon) to do more active “announcing†of a LibraryBox.


====Mobile application for BTLE beacon====
Working with advice from the leads of both the Piratebox and Librarybox projects, the first goal will be to leverage the existing codebase onto the Raspberry Pi 3, complete with build instructions and installer that will enable novice users to build their own. Secondary development goal will be to enable BTLE beacon services on the Box.
A side project for this project may be the development of a very simple iOS/Android app that acts as a simple alert mechanism for the BTLE beacon.  


The outcome of this would be an SD card image or push-button installer that builds the image for users that enables all existing LIbraryBox functionality, as well as any enhancements (such as BTLE beacons) that we can within the development cycle.  
===Mesh Networking on LibraryBox===
LibraryBox has existing support for client/server synchronization, but enabling more robust network-traversal mesh would be a huge benefit to remote installations. The goal for this project would be to work with the existing codebase to add the capacity for automated discovery of other LibraryBox nodes within wifi range, network negotiation between said nodes, and the ability for browsing from one node to another via client browser.


====Mesh Networking on LibraryBox====
 
LibraryBox has existing support for client/server synchronization, but enabling more robust network-traversal mesh would be a huge benefit to remote installations. The goal for this project
===UX/UI design===
LibraryBox has had the same basic very simple interface for a few years now, and it's time to freshen the look. You would be responsible for analysis and implementation of a new look and feel for the LibraryBox project, with the limitation of using only basic web technologies that will work on all possible client devices (or will progressively enhance the experience depending on the client). This will require a deep understanding of developing world technologies, the ability to simplify, and no desire at all to use node.js.
 
 
Skills needed: understanding of linux networking and low-power hardware platforms combined with a desire to make the experience as easy as possible for users.

Latest revision as of 12:28, 7 March 2017

Project Description

http://librarybox.us

LibraryBox is an international project that provides open source, portable digital file distribution tool based on inexpensive hardware that enables delivery of educational, healthcare, and other vital information to individuals off the grid. Used around the world in education, healthcare, and activism, the LibraryBox project attempts to provide an easy-to-implement tool for anyone that needs to distribute digital information where the infrastructure for such sharing is limited, damaged, controlled, or non-existent.

Ideal candidate

The LibraryBox Project is interested in a variety of possible contributors, from web-front-end, usability, and design work that improve the user experience to Linux devs with networking and LAMP-stack-like experience. Possible interest in Android/iOS app development for Beacon responsiveness.

Project ideas

LibraryBox on Raspberry Pi 3

The existing hardware that LibraryBox uses is under threat from new FCC regulations (http://yro.slashdot.org/story/16/02/18/1423216/tp-link-begins-lockdown-of-firmware-in-response-to-fcc). We have been planning to port our code to a more robust platform, and it appears that now is the ideal time to do so. We will be looking for coders willing to work with the existing PirateBox Raspberry Pi installation (https://github.com/PirateBox-Dev/arch_rpi_image_prepare) and work to modify it to work with the LibraryBox customizations (some of which is already in progress https://github.com/LibraryBox-Dev/LibraryBox-core/tree/master/piratebox_origin/BuildScripts/RaspberryPi). In addition, the newest Raspberry Pi hardware includes Bluetooth Low-Energy, which we would like to begin using this new capability as a Beacon (https://en.wikipedia.org/wiki/IBeacon) to do more active “announcing†of a LibraryBox.

Working with advice from the leads of both the Piratebox and Librarybox projects, the first goal will be to leverage the existing codebase onto the Raspberry Pi 3, complete with build instructions and installer that will enable novice users to build their own. Secondary development goal will be to enable BTLE beacon services on the Box.

Mesh Networking on LibraryBox

LibraryBox has existing support for client/server synchronization, but enabling more robust network-traversal mesh would be a huge benefit to remote installations. The goal for this project would be to work with the existing codebase to add the capacity for automated discovery of other LibraryBox nodes within wifi range, network negotiation between said nodes, and the ability for browsing from one node to another via client browser.


UX/UI design

LibraryBox has had the same basic very simple interface for a few years now, and it's time to freshen the look. You would be responsible for analysis and implementation of a new look and feel for the LibraryBox project, with the limitation of using only basic web technologies that will work on all possible client devices (or will progressively enhance the experience depending on the client). This will require a deep understanding of developing world technologies, the ability to simplify, and no desire at all to use node.js.


Skills needed: understanding of linux networking and low-power hardware platforms combined with a desire to make the experience as easy as possible for users.