GithubHelp home page GithubHelp logo

nicholaslyang / chance-me Goto Github PK

View Code? Open in Web Editor NEW
8.0 8.0 4.0 7.45 MB

Find the best place for your next four years

License: MIT License

Ruby 47.09% HTML 0.21% JavaScript 27.15% Shell 0.37% TypeScript 25.18%
graphql rails reactjs ruby

chance-me's People

Contributors

nicholaslyang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

chance-me's Issues

Add Search (React)

Add a search bar to the page. It doesn't have to do anything just yet, but it should be reasonably styled (i.e. not the default input styles) and available on every page. It should be its own component too (i.e. make a SearchBar component)

Add Search (Rails)

Add search functionality. Right now, just for schools, but later we'll explore adding it for reviews. I would consider using something like PgSearch (except that requires #7). Please do NOT use anything complicated. I do not want an Elasticsearch cluster. Should have a corresponding GraphQL query that takes an argument (i.e. query) and returns the relevant results.

Reviews (React side)

We need a way of displaying reviews. Reviews are short blurbs that are specific to a school and topic. For instance, a review could be for University of Central Florida on the topic of Biology. Reviews are meant to be short, succinct and easy to post, like tweets. This is an open ended issue that may be split into sub issues as needed. A roadmap:

  1. Design Review List UI. How should reviews be displayed? A list? Grid? Come up with a basic idea.

  2. Design an individual review component. Design how each element of information (author, school, content) is displayed.

  3. Create the components. Use mocked data for now.

  4. When the API work is done, add the GraphQL query and display read data.

Finally, reviews is not the final name for this component. If you can come up with a more fitting name (blurbs, notices, etc.) then feel free to propose it.

Recolor Add School Button

Right now in Header we have an add school button. However, it's using the old color scheme (white with maroon on hover). I'd like to change that. Change the color to one of the following:

#2b2d42
#ed3535
#a33b20
#00cfc1
#00ffe7

If you have a different color that you prefer, let me know. It should be bright.

Add Pagination to Schools

Right now the GraphQL query allSchools (see app/graphql/types/query_type.rb) returns all the schools that exist ever. That won't scale at all, since it will return every single school, which could be far too many for the React front end to display. To solve this, I need someone to implement pagination.

Some gems you might want to check out:
Kaminari
will_paginate

Please do some research, determine which library (if any at all) you want to use, THEN open a pull request with the necessary code changes.

Some notes:

  • You don't need to use the libraries above. If you find a better alternative that you can justify, I'm fine with that.
  • The code doesn't have to use a library. You can write it yourself, as long as it has the necessary functionality and stability.
  • Please try to limit the amount of code put into the query. If there is a lot of business logic needed, place it in the model.

Extend About Page

Add some photos to the about page. They shouldn't be copyrighted and should be of reasonable quality. Ideally of college campuses. Make sure they're centered and reasonably sized. Also, proofread the about page copy.

Finally, add a Navbar component that allows users to find the about page. Style it how you will, but try to use the main colors:

#2b2d42 #ed3535 #a33b20 #00cfc1 #00ffe7

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.