Say goodbye to cluttered bookshelves and hello to a new way of reading. Bookworm connects you with a community of book lovers who are eager to share their favorite stories with one another. Simply swap books with members of our community and enjoy new stories for free!
- This project was the Capstone project for the 8-month Software Engineering program at Turing School of Software and Design. It was the first time the Back End and Front End cohorts worked together to create a full-stack project.
- Our main learning goal as a group was learning GraphQL. In this project, we utilized the CRUD methods with GraphQL and look forward to adding to this project so that our use of GraphQL is more realistic to how it would be used in a long term project.
(Want to hire the devs that worked on this project? Click this link to jump to our project contributors!)
Visit our Front End Site here
Find our Front End documentation here
git clone
cd bookworm-be
ruby -v
The ouput should start with something like ruby 2.7.4
If not, install the correct ruby version using rbenv:
rbenv install 2.7.4
Using Bundler
bundle install
Using Figaro
bundle exec figaro install
add your key from Google Books API to application.yml in the config folder
google_books_api_key: 'your_key_goes_here'
rails db:{drop,create,migrate,seed}
bundle exec rspec
rails s
You should now be able to hit the API endpoints using Postman or a similar tool.
Default host is http://localhost:3000
To make calls to our server, use this endpoint: https://bookworm-be.herokuapp.com/graphql
{
user(id:1) {
userName
location
emailAddress
}
}
{
books {
id
isbn
title
author
pageCount
imageUrl
summary
}
}
{
book(id:1){
id
isbn
title
author
pageCount
summary
imageUrl
}
}
{
bookSearch(title: "Jurassic Park") {
id
isbn
title
author
pageCount
imageUrl
summary
}
}
{
googleBooks(title: "Jurassic Park") {
isbn
title
author
imageUrl
summary
pageCount
}
}
mutation{
createUser(input: {
userName: "Zuko",
emailAddress: "[email protected]",
location: "Denver"
}) { user {
id
userName
emailAddress
location
}
}
}
mutation{
createBook(input: {
userId: 8
isbn: "9780525657743"
title: "Crying in H Mart"
author: "Michelle Zauner"
summary: "NEW YORK TIMES BEST SELLER • From the indie rock sensation known as Japanese Breakfast, an unforgettable memoir about family, food, grief, love, and growing up Korean American—“in losing her mother and cooking to bring her back to life, Zauner became herself” (NPR)"
pageCount: 257
imageUrl: "http://books.google.com/books/content?id=30UlEAAAQBAJ&printsec=frontcover&img=1&zoom=1&edge=curl&source=gbs_api"
}) { book {
id
isbn
title
author
summary
pageCount
imageUrl
}
}
}
mutation{
patchUserBook(input: {
userId: 4,
bookId: 10,
borrowerId: 1,
status: 1
}) { userBook {
bookId
status
}
}
}
mutation {
deleteBook(
input: {
userId: 8
bookId: 16
}
) {
success
}
}
Amanda Ross | Naomi Yocum | Rich Kaht |
GitHub |
GitHub |
GitHub |
Adelle Pitsas | Joshua Pierce | Lauren Frazier | Sage Skaff |
GitHub |
GitHub |
GitHub |
GitHub |
Juliet Eyraud
Taylor Pridgen