f.log is an online logbook that aims to provide pilots of airplanes, sailplanes, paragliders, hang gliders, wieightshift microlights, skydivers and any other kind of skybound vehicle with a simple logbook to store their flights online. The key advantages are secure data storage online, easy access anywhere there is internet and the ability to view data about a user's flying history in chart form.
This project was created during the week of the 19th of October 2020 for a General Assembly Software Engineering Immersive with the goal of learning the ins and outs of RubyOnRails and Heroku deployment. While there are things that could/should be updated it is not active at this time.
- Ruby 2.7
- Rails 5
- Bootstrap 4.5.2
- PostgreSQL 13
- Chartkick 3.4.2
- Highcharts JS 8.2.2
- Faker 2.14
This website is available via Heroku
If you would like to run it on localhost, get a PostgreSQL server running, then in the project file, run rails db:migrate
and rails db:seed
then rails server
and you should be able to access it.
- Allows users their own set of logbooks and flights and to view statistics specific to them
- Create and destroy user sessions
- Create users (user update and destroy not yet supported)
- Create, read, update and destroy Logbooks
- Create, read, update and destroy Flights
- Display statistics for each user in easy to read charts.
- Navbar with dropdown menus
- Sticky footer
- Styled views, forms and statistics page with sidebar.
- For testing purposes, on
rails db:seed
a user is created with flights of each type - Flight details are randomly generated for between 100 and 400 flights with
Features that were not completed in the project time limit but could be added to improve the project include:
- User account editing and deletion
- Styling of the 'jumbotron' element on the homepage
- Automation of the 'serial' column in the skydiving logbook
- Moving code from views to models as scopes
- Formatting dates within logbooks using strft
- Allowing dynamic parameter setting and display for Charts
- Allowing tables to dynamically adjust to flight details entered rather than relying on
aviation_type
setting
Thanks to course instructors Joel Turnbull and Camilla Champion de Crespigny