This application is to help with managing one or more home aquariums as well as helping professionals who look after multiple clients tanks. The goal is to be simple to set up a new tank while be customisable for a particular users preference.
The application is primarily for me to learn Rails as an API along with an Ember front end, however I also have fish to look after!
Contributions are welcome as long as you follow the Code of Conduct, which in essence means to treat everyone reasonably.
The major features are planned to include
-
Record current fish, purchase details and any notes
-
Advice on fish compatability based on current stock
-
Store chemical and related test results
-
Provide warnings if the chemistry range is outside desired parameters
-
Provide reasoanble default parameters for various types of tanks (marine, tropical etc) and allow for simple customisation
-
Supports multiple tanks
-
Store information on addidatives and purchase details
-
Store tank details with purhcase details
-
Store related equipemnt with purchase details
-
Store significant events that have happened in the tank
-
Attempts for treatment and resuts
-
Provide a simple way to include information regarding your tank for discussion forums
-
Provide simple graphs showing trends and correlations
HappyFish is a Rails application with a simple HTML for all functions. There will be a backing API for most functions with the intention that the richer front end will be developed in a JS framework. Mobile clients are also a possiblity in the future.
The application has been developed with Postgres however should be compatable with most databases.
Testing is using rspec with factory girl to assist with data generation. Development basically follows a TDD methodology.
I come from a Java background and prefer to have generated documents for all classes with their attributes. Documentation is generated using YARD and is stored in the documentation directory.
The following versions of the major software have been used, future or previous versions may work however they are untested.
-
Rails 5
-
Ruby 2.0.4
-
RSpec 3.5
The code is distributed under the Mozilla Public License Version 2.0.
The project places a strong emphasis on ensuring this is a welcoming project for everyone, we utilise The Contributor Covenant.