GSoC 2015 submissions are not ready yet. This page contains some ideas as we form our projects for 2015.
See the [[Google Summer of Code 2014]] page for projects that took place in 2014. We will update the ideas below as time permits. If you are you a GSOC student, we will ask that you [https://docs.google.com/a/puchol.com/forms/d/1k4MQbhQtSCxfP_con95MnjxLv3GeuJifs9jjNBd3E84/viewform introduce yourself with this form], so that we know your background and interests.(This form is not open yet)
If you have questions about Amahi or just want to interact, you can contact us via IRC on [http://talk.amahi.org #amahi on irc.freenode.net] (fairly active) or on the amahi-devel [[mailing list]] (not as active). Don't forget that these are subject to suggestions, extensions or adaptations. Feel free to discuss or propose new ideas for projects!
== Platform ==
===Plugin System (Completed) Apps ===
'''Description''': Make Plugins that provide value to the ability to create and install user, such as using [httpshttp://githubd3js.com/amahi/platform/blob/master/doc/pluginsorg D3.md Amahi Pluginsjs] easy and enable to visualize things internal to the creation of those plugins for a variety of purposessystem, like SMART monitoringfinding out the disk space used by shares, system stuff (network scanningdisk usage over time, etc.) and the two examples below for the disk wizard and the Greyhole UI, among other ideas.
'''Objective''': Create an amahi plugin system, where PHP, Python, Node, and other modern webapps can be easily integrated. We can currently do this with some RoR engines, but the mechanism is not robust enough. The plugins system should allow modern web-based apps to be easily integrated with Amahi -- from Node.js apps to Ruby/PHP/Python -- so that users can easily reap the benefits of the onslaught of difficult-to-deploy modern web apps with a single click install.ProTip: possibly leverage docker containers within Amahi '''Skills Required''': RoR, git '''Mentors''': Carlos, Rod ===Disk Wizard (Nearly Not Completedin 2014) ===
'''Description''': Expanding the storage capacity is an important feature of Amahi but as of now it requires advanced (e.g. command line) skills. We want easy disk/partition onboarding.
* [http://www.openmediavault.org/ OpenMediaVault] does have a nice wizard that people like
===Greyhole UI (Completed) === '''Description''': [http://www.greyhole.net/ Greyhole] is an application that uses Samba to create a storage pool of all your available hard drives (whatever their size, however they're connected), and allows you to create redundant copies of the files you store, in order to prevent data loss when part of your hardware fails. The purpose of this plugin is to provide a UI and the necessary tools under the UI to make starting and managing a Greyhole UI possible and nice to understand for regular humans. '''Objective''': Create and amahi plugin that provides an UI that allows for the management of the greyhole pool. The plugin should allow an administrator user to:add/remove disks to/from the pool.* change the number of copies for individual file/directory* invoke various gh commands* view and monitor log files* gui to visualize data distribution '''Skills Required''': RoR, System programming '''Mentors''': Carlos, Rod ===Amahi 8 (Partially Completedin 2014) ===
'''Description''': Amahi 7.2 and Amahi 8 are what's next. This is the time to come up with exciting features and ideas that we should put in Amahi 8 and the GSOC timeline is a perfect match!
Mobile is a great topic at the moment and there are a lot of opportunities here. In the Android app, definitely more than one student are suitable for the project.
===Android App Implementation (Completed -- more projects are available) ===
'''Description''': There's huge demand for an Android application following the popularity of our iOS app. Our users are looking for an application that has feature parity with the existing iOS app, and even shows it up with additional features!
'''Objective''': An Android app that is on par or better than the iOS app, including mobile streaming, downloading files and sharing them.
'''Skills Required''': Java, Android, REST, JSON API programming, media interaction in Android
'''Mentor''': Jesse Read, Carlos, Bogdan
===Webapp Browsing in Mobile apps===