Skip to content

Private-events is a private site which allows users to create events and then manage user signups.

Notifications You must be signed in to change notification settings

Rumbie-Mudzie7/private-events

Repository files navigation

PRIVATE-EVENTS

Screenshot

Screenshot

Live Demo

Live Demo Link

**Completed the necessary steps in building a private events site similar to Eventbrite, which allows users to create events and then manage user signups using the following criteria:

  • Users can create events and send invitations and parties.
  • Events take place at a specific date and at a location.
  • A user can create events.
  • A user can attend many events.
  • An event can be attended by many users.

🔧 Built with

Ruby Ruby on Rails Sqlite3 PostgresSQL

Configurations

  • Models,Views and Controllers
  • Gem installations
  • Validations
  • Relationships
  • Migrations

Extra Ruby gems

  • Hirb
  • Bootstrap

Authentication procedure

  • Authentication from scratch

Database configuration:

  1. Models
  • User
  • Event
  • Event_attending
  1. Validations
  • User name, email and password validations for length and uniqueness.
  • Event title and description validations
  1. Associations
  • belongs_to for a one-to-one connection
  • has_many for a many-to-many connection among models
  1. A Few Gems:
  • Using the Gemfile to Set up a RubyGem: In this iteration we took take advantage of the many plugins and libraries available to quickly add features and error handlers to your application. The bootstrap plugin gem was added and used for styling the UI.
  1. Migrations Migrations were run to:
  • Add Fields to users
  • Create User model
  • Create Event model
  • Create Event_attending model
  • Add id for event to event_attending model
  • Add creator_id to event model
  • Add index on event_id in event attending model

Prerequisites

Ruby, RubyGems, sqlite3, yarn and node

Getting Started

  1. Compulsory Installations:
  • Git
  • Ruby 2.7.1 or latest version
  • RVM
  • A few Gems
  1. Rails Setup: Next we need to install dependencies and setup the database.

  2. Rails Console: Check that the console is working properly by running $ rails console in your terminal. Run association tests in console to test for model connections.

  3. Run bundle install in the terminal to install gems and their dependencies.

  4. Run rails db:migrate to update the database.

  5. Run rails s or rails server in the terminal to start the server.

🔨 Setup

Testing

The following gems were run and installed before implementing the rspec tests:

gem 'database_cleaner', '> 1.8', '>= 1.8.5' gem 'rspec-rails', '> 4.0', '>= 4.0.1' gem 'capybara', '>= 2.15' gem 'selenium-webdriver' gem 'webdrivers' gem 'shoulda-matchers', '~> 4.4', '>= 4.4.1'

Find rspec tests in the spec/features directories:

  • sign_in_spec.rb
  • sign_up_spec.rb
  • sign_out_spec.rb
  • events_spec.rb

Authors

👤 Rumbidzayi Mudziviri

👤 Clayton Siby

🤝 Contributing

Contributions, issues and feature requests are welcome!

Feel free to check the fork this repo and create pull request if you want to make changes.

👍 Show your support

Give a ⭐️ if you like this project!

👍 Acknowledgements

The Odin project Guide: https://www.theodinproject.com/courses/ruby-on-rails/lessons/

About

Private-events is a private site which allows users to create events and then manage user signups.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published