No description, website, or topics provided.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Camp_Post - Live Link


Full Stack Rails App built for the final WDI Project

Camp_Post was built as a way for those who enjoy camping and backpacking to share their experiences.

Users will be able to create a profile, create new reviews, bookmark future trips, search national parks, rate campsites and create a camping list.

Feel free to fork / star / watch for your own personal use.

See the published project at!

Future Development

-Mobile responsive.

-Allow admins to create and edit new campsite locations.

-Plot map all locations.

-Allow users to add images to their reviews.

-Sort by top rated campsites.

-Utilize APIs for weather and twitter.

#Entity-Relationship Diagram

User table: Main database model for users and sessions

Campsite table: Stores all campsites information

CampingList table: Allows users to create and save camping lists

Review table: Stores reviews to both users and locations

CampsitesUser table: Allows users to bookmark campsites for future use

Rate, Cache, & Overall Average tables: Allow users to rate campsites

#Technologies Used

####Languages: HTML5, JavaScript, CSS, Ruby ####External Libraries: jQuery, Materialize ####Frameworks: Rails

Code I'm Proud Of...

This piece of code created the web scraper used to pull in every National Park from Wikipedia.

```ruby #campsites_controller wiki_url = "" page = Nokogiri::HTML(open(wiki_url))

campsites = page.css("tr th a") @campsite_array = [] do |a| campsite_name = a.text @campsite_array.push(campsite_name) end @campsite_array[4...63].each do |el| natpark = Campsite.find_or_create_by(name: el) end

#campsites_show <% @campsites[0...63].each do |p| %>

<%= link_to "#{}", campsite_path(p) %>

<% end % > ``` This piece of code allows for users to search the campsite index.
```ruby # campsites_controller def index @campsites = Campsite.all # search functionality if params[:search] @campsites =[:search]) else @campsites = Campsite.all end # pagination @campsites = @campsites.paginate(:page => params[:page], :per_page => 12, :total_entries => 60) end

campsites model

def where("name ILIKE ?", "%#{search}%") end


<%= form_tag(campsites_path, :method => "get", id: "search-form") do %> <%= text_field_tag :search, params[:search], placeholder: "Search Parks" %> <%= submit_tag "Search", class: "btn btn-danger pic-large", id:"buttonz" %> <% end %> <% if @campsites.present? %> <% else %>

There are no campsites containing the term(s) <%= params[:search] %>.

<% end % >
## Screen Shots
<img src="" width="600">
<img src="" width="600">
<img src="" width="600">
<img src="" width="600">

## Trello Board
[Wireframes, Database models & Sprint Planning](

## Contributors
[Zach Cusimano](

## Resources
[Nokogiri as a Web Scraper](<br>
[Search in Rails](<br>
[Bookmarking Rails](<br>
[Rating System](