The project aims for pet owners to track their treatment. Pet owners have to login to the application and insert information about any number of pets they own. They can record any event of their pets’ lives like vaccinations, illnesses, nutrition, grooming, weight control, everyday hobbies etc. Also, users can schedule appointments with a vet or a groomer.
This project was self-motivated and built to practice my skills in Ruby on Rails!
Explore the docs
- About the Project
- Development
- Entities Relationship Diagram
- Screen Shots
- Testing
- Live Version
- Built With
- Contributors
This project is using the devise gem to handle users' authentication. A user's entry requires the following fields : email, password, first name and surname.
The logged in user has full access on their content and only view access to the content of the rest of the users.
The user can insert any number of pets and add treatment records related to a particular pet.
A pet requires a name field and optionally can have : date of birth, species*, race, breed, color, gender, sterilised status, notes about the pet and an unlimited number of photos or videos.
A treatment record holds information about a case of an incident of treatment such as the date & time, an item which denotes what kind of treatment the pet takes e.g. Vaccination, Hair Cut, or Surgery Operation, a description, a location to denote the clinic or anywhere else, and the cost of the incident. Additionally, a case can have an unlimited number of photos or videos.
Additionally, the user can keep track of appointments related to their pets treatment noting the date & time, a title, some content, the location and the done status.
The project was initialised using Ruby v3.0.1 and Rails v6.1.3.1.
The Gemfile was configured to use sqlite3 for development and test environments, and pg (postgres) for production environment.
For the authentication, devise gem was installed.
Active Storage was installed to facilitate uploading files to a Google Cloud Storage and google-cloud-storage gem v1.8 was installed to support this purpose.
The image_processing gem v1.2 also was installed to support image processing.
For running rails tests on a browser environment, it was installed the gem capybara.
RSpec has been used for testing the application.
Find test files in app/spec folder
To run testing suite using RSpec in terminal window enter
rspec . --format documentation
This project was built using these technologies.
- Ruby version 3.0.1
- Ruby On Rails version 6.1.3.1
- rspec
- capybara
- ActiveStorage
- Google Cloud Services
- Heroku
👤 Author
- Github: @ioanniskousis
- Twitter: @ioanniskousis
- Linkedin: Ioannis Kousis
- E-mail: [email protected]