Skip to content

shecking/rails-api-project2

Repository files navigation

Practice Session Tracker: Application Description

This application is intended for musicians of all kinds as a way to log practice sessions. The app is capable of storing a date, time, time practiced, and notes for any number of a user's practice sessions. Sessions are protected by a login/logout procedure, only allowing a signed in user to view their own practice sessions. PST was created using a custom back end server supported by Ruby on Rails, and its front end was mainly developed using JavaScript.

This file is for the back end of the application.

Important Links

Link to the back-end: https://rails-api-project2.herokuapp.com/ (note: used for testing, HTTP 404 error is expected)

Link to the back-end repo: https://github.com/shecking/rails-api-project2

Link to the front-end application: https://shecking.github.io/client-project2/

Link to the front-end repo: https://github.com/shecking/client-project2

Planning Story

This back end framework, as well as its complementary front end application, represent my second major project completed as a software engineer, and the first to involve a full stack development process. Building on my prior experience creating a front end application with a supplied back end, I followed a process that was quite similar; learn the structures and behaviors of the languages and programs I was working with, proceed slowly and methodically, and work toward a minimum viable product above all else.

I progressed with the project by closely aligning my work with a provided project schedule outline. This helps guide my thought process, structural planning, coding, and of course troubleshooting and error debugging. Throughout the process, I continually referenced personal notes, prior lessons and examples from my studies, and online documentation for language syntax and best practices. I also turned to fellow students and instructors for any particularly challenging problems to learn from their expertise or their own troubleshooting.

Specifically concerning the back end, while I had experience communicating with a server via API calls/responses before this application build, I had never built one from the ground up. Through study, I learned each of a back end's major components individually, then connected them together to describe how the back end works as a whole. This process was invaluable for my understanding of the transfer and processing of data that occurs outside the client experience completely, and will aid my code development in the future.

Technologies Used

  • Ruby, Ruby on Rails
  • Postgresql
  • DOM/APIs
  • Heroku

Unsolved Problems

As of this initial version, the application is fully functional, enabling users to store data about multiple practice sessions over time. Improvements to be considered for future versions include modifications to make interfaces display fluidly and create a more engaging, user-friendly application, as well as the ability to track more precise session statistics for a user (i.e. progress on individual pieces of music).

Entity Relationship Diagram:

https://imgur.com/a/71bCGOy

About

Back end server for Practice Session Tracker

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published