Code Monkey home page Code Monkey logo

tahsinac / vet-app Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 0.0 23.58 MB

A web application for the school of Veterinary Medicine at the University of Calgary to help manage animals profiles, treatment & prescriptions, animal status availability for instruction purposes and process requests for treatment and instructions. This project involved designing and implementing the database, designing REST APIs and designing and implementing the front-end. This project was delivered using Agile methodologies in a team of 3 developers.

HTML 1.03% JavaScript 55.52% CSS 0.08% Java 43.36%

vet-app's Introduction

A web application for the school of Veterinary Medicine at the University of Calgary to help manage animals profiles, treatment & prescriptions, animal status availability for instruction purposes and process requests for treatment and instructions. Functionality:

  • Manage animals
    a. Create animal profile (includes profilee photo, RFID number, name, sex, breed, age etc.)
    b. Search animals
    c. Ongoing care process (prescriptions, medications, treatment)
    d. Leave comments and alerts on the animal profiles.

  • User Management
    a. Add users
    b. Access control
    c. Manage users (block, suspend, etc)

Demo Video

Demo video

Database Instructions

  1. Ensure that dummyvet2.sql has been loaded and executed in MySQL workbench.
  2. In the Java IDE, navigate to > src > main > resources and open application.properties.
  3. In application.properties, change the following lines:
    spring.datasource.username=root
    spring.datasource.password=password
    spring.jpa.hibernate.naming.implicit-strategy=org.hibernate.boot.model.naming.ImplicitNamingStrategyLegacyJpaImpl
    spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
    
    spring.jpa.properties.hibernate.dialect= org.hibernate.dialect.MySQL5InnoDBDialect
    spring.jpa.hibernate.ddl-auto= update
    
    vet-app.app.jwtSecret= mySecretKey
    vet-app.app.jwtExpirationMs= 86400000
    
    
  4. Navigate to > src > main > java and run Application.java

API endpoints

  1. User story: VETAPP-11 Add Users
  2. User story: VETAPP-13 Edit Users
  3. User story: VETAPP-12 Review Comments
  4. User story: VETAPP-15, VETAPP-25 Make/Take Comments
  5. User story: VETAPP-19, VETAPP-28 View & Search
  6. User story: VETAPP-100 View photos
  7. User story: VETAPP-27, VETAPP-24 Monitor Animal Status
  8. User story: VETAPP-17, VETAPP-18, VETAPP 23 Change/Update Animal Status
  9. User story: VETAPP14 Upload Photos
  10. User story: VETAPP18 Update Treatment
  11. User story: VETAPP18 Diagnose & Prescribe Treatment
  12. User story VETAPP-16 Request Treatment

Frontend

Please ensure you have the following installed:

npm install axios
npm install @mui/material
npm install @mui/x-data-grid
npm install @mui/material
npm install @mui/icons-material
npm install @emotion/react
npm install @emotion/styled
npm i date-fns
npm i @mui/lab
npm install react-router-dom@5
npm install react-router-dom@5

Once all the dependencies have install, start the react application: npm start

Implemented Features on the Front End

  • Home Page
  • Login Page
  • Animal Profile Grid
  • Users Management Page
  • Animal Request Page
  • Animal Profile Details Page
  • Animal Images
  • Animal Comments
  • Animal Rx
  • Animal Alerts
  • Not Found Page

Backend

Back end is built using Spring Boot for database connectivity and Spring Security on the API end points.

Instructions

Example login credentials:

  • Admin Role:
    username: admin , password: password
  • Animal Care Attendent Role:
    username: aca , password: password
  • Animal Health Technician Role:
    username: aht , password: password
  • Student Role:
    username: student , password: password
  • Teaching Technician Role:
    username: tt , password: password

vet-app's People

Contributors

tahsinac avatar b-attai avatar github-classroom[bot] avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.