Skip to content

User Manual

shgt09 edited this page Mar 7, 2021 · 15 revisions

Set up

For set-up, you can also refer here under Build and Deploy Instructions

Go to an environment

  • You will need an Amazon AWS account to build and deploy the application.

  • Click the link to AWS.

  • Sign in to your AWS account and navigate to the Cloud9 service.

  • Create your own environment by navigating AWS Cloud9 -> Your environments -> Create environment.

  • Fill in your environment name and description and complete creating an environment with following options:

  • Environment type
    Create a new EC2 instance for environment (direct access)
  • Instance type
    t2.micro (1 GiB RAM + 1 vCPU)
  • Platform
    Amazon Linux 2 (recommended)
  • Cost-saving Setting
    After 30 minutes (default)
  • Once you complete the above steps, the environment should be created and you should be in an online IDE with a terminal near the bottom of the page.

Pre-requisites

  • In the bash terminal, you need to clone the repository:
    git clone https://github.com/cs130-w21/23_2.git

  • Then, you need to install several packages and create the database. In the bash terminal, type the following commands: (while installing, type y for confirmation)

    rvm install "ruby-2.3.0"
    gem update --system 3.0.9
    gem install bundler -v "2.2.12"

    cd 23_2
    sudo yum install -y openssl-devel
    sudo yum install postgresql-devel
    sudo yum install ImageMagick
    bundle config build.puma --with-cflags="-Wno-error=implicit-function-declaration"
    sudo yum install libpq-dev
    bundle install

    rails db:drop
    rails db:create
    rails db:migrate

    Note that
    db:drop - will drop database.
    db:create - will create database (host/db/password will be taken from config/database.yml)
    db:migrate - will run existing migrations from directory (db/migration/.rb)*.

  • Use the file explorer on the left of the page to navigate to /23_2/app/assets/javascript and manually create a folder called channels there (Note that this is because git does not allow the additional of an empty folder, but our application requires one.)

Start the server

  • Before starting the server, make sure that if you are in the correct directory:
    ec2-user:~/environment $ cd 23_2

  • Start the server:
    ec2-user:~/environment/23_2 $ rails server

  • Click the following button to pop out into new window:

  • If you get a red page stating "require_tree argument must be a directory", use the file explorer on the left of the page to navigate to /23_2/app/assets/javascripts and create a folder called channels.

  • Otherwise, you should see the following sign up page:

  • NOTE) If you encounter any critical issue during the set up so that you cannot run the server, please use the following AWS account:


The above environment is already fully set up. With this account, please follow the above step from Start the server part.

How to use the application

Create an account

  • Fill in your email and password, then you should be in pangaea page.

Create Profile

  • Click Create Profile on the upper right of page.

  • Fill in your profile as the following:

    Then you will see your profile:

Edit Profile

  • Click Profile on the upper right of page and click Edit Profile.
  • Update your file as you wish. Suppose you changed your profile picture, then after the change:

Create Post (Group chat)

  • To create post, click Create Post on the upper right of page.

  • Fill in your post information as the following:

Note that you can create constraints on your post:

  • Gender:
    Only Male / Only Female / Does Not Matter
  • College Student:
    Only Students At My College / Only College Students / Does Not Matter
  • Min/Max Age:
    From 13-year-old to 100-year-old

  • Once you created your post, you can check it by clicking Groups on the upper right of page.


  • If you click your group, you can see your post and who is participated in your group:

Search Post (Group)

  • For anyone to search your post, they can either use search filter on the left or search by keyword.

  • On the search filter, if you change the city from Gardena to Los Angeles:

  • You can search the post by keyword. If you type "CS130" in the search bar, only the posts related to CS130 show up:

Group Request

  • Once your searched the post(group) that you are interested in, you can request to join the group by clicking the Request to Join.

  • Then a group administrator can accept/reject the request:

  • If your request is accepted, you should be in the group:

  • If your request is rejected by the administrator, you cannot join the group

Group Message

  • Once you are in the group, you can talk to group members by using group message. Suppose that there are total 6 people in the group: