Code Monkey home page Code Monkey logo

open's Introduction

We're building a community for discovery and learning.

To get started, follow these steps:

Prerequisites: Node.js ( Install Here ), Git ( Install Here )

  1. Clone the repository using the following command in your terminal: git clone https://github.com/ThinkFiveable/open fiveable-open
  2. Go into that project's directory using cd fiveable-open
  3. Do npm install to install required dependencies
  4. Then, npm run dev which will run the site locally at http://localhost:3000

Frameworks/Libraries this project uses

  • Tailwind CSS (no more going through the installation guide!) - for styling components easily
  • next-themes (@pacocoursey) - for going to the dark side
  • swr (@vercel) - for fetching constantly mutating data
    • fetcher.js so you don't have to keep writing return functions
  • framer-motion - for making interactive components and eye-catching animations
  • react-icons - for including your favorite icon packs without increasing bundle size significantly. Tree shaking included.

How do I contribute?

Great question! You are expected to fork this repository and to create PRs when you want to merge your changes. Your commits are expected to follow our Commit Convention, so some example ones are:

  • fix: broken button on index.html
  • fix(Index): broken button
  • chore: add NEWFILE.md
  • feat: new button!!! Before making a PR, make sure to run npm run lint:fix and fix any warnings or errors that might be shown in your terminal to ensure consistent code style.

You can find more information regarding contributing to this project in our CONTRIBUTING.md

Licensed under MIT.

open's People

Contributors

achaljhawar avatar amal-san avatar awlevin avatar ceelo777 avatar dependabot[bot] avatar exu3 avatar jasonappah avatar nabesuke5098 avatar neeltron avatar nikshitak avatar ronaldleung1 avatar sarthaktexas avatar shreeyachand avatar supersonik12 avatar tejascreative avatar tobia2028 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

open's Issues

Styling on mdx layout

  • reduce padding in the x direction on mobile
  • line height on <h2> is too large on mobile
  • make links a different color and underline to make it clear that it's a link

Unfinished Card Component

Whoever gets assigned this should finish the Card Component according to the design specifications on the Figma. Make sure you put the component on the index.js page with some dummy data, so we can see it in the Preview Deployment.

Project filters/ categories

Create categories/ filter labels for the project data --- to give art students a place to post their projects as well.

DARK MODE

If you want to add dark mode to the site, please dm me on Slack or Discord, and we can make a design together, and you can code dark mode in using the dark: utility. This should be too hard, but I don't want to keep requesting changes without a design so let me know.

project submission guidelines

For when we start accepting projects that people have created to be showcased on our website, we need to come up with some clear and concise acceptance guidelines and criteria.

Footer component

Create the footer component according to the design specifications on the Figma. You can put the component on the index.js page afterwards, so we can see it in the preview deployment.

Project Cards - Details View & Links

Thought we had links from project cards to the individual repositories in an open PR but seeing as there are currently no PRs open and no links on the cards on open.fiveable.me, I guess we still need that!

This issue can be separated into 2 separate PRs if desired:

  • Add links to project preview cards so it's easy to visit each project repo.
  • Add a details view for the project cards so it's easy to see a quick synopsis of the project without diving in. Submissions in the Google form should already have this information, so minimal work needed there to flow it into the site.

For the details view, I think this could be a great opportunity to experiment with animations or CSS tricks. A couple ideas:

  • A slide-out dark background on hover with white text.
  • A card-flip animation on hover. There's a free tutorial preview of this in this course: Natours Project β€” Using Advanced CSS and Sass (Part 2) ("Building the Tours Section - Part 1/2/3"). I'm sure there's also libraries out there to make this a piece of cake.
  • A pop-out modal or some kind of FLIP transformation on the card. See react-flip-toolkit (personal favorite of mineβ€” very powerful & very easy to use, at least depending on what you're doing). Tutorial for it here.

Consistent styles in footer links


Currently only the Contact button highlights on hover. It would be nice to make the styles on all the footer buttons the same on hover.

GIFs in CONTRIBUTING.md

Add GIFs to CONTRIBUTING.md demonstrating the steps outlined in the document. This may include forking, commiting, pushing, making a pr, fetching upstream

Card component

this is the second variant of the project card component
card component

optimize the various data holders

We currently hard code the data for ./data/PROJECTS.json and ./data/CONTRIBUTORS.json. In the future, post MVP stage, I'd like to dynamically fetch this data, either from the Github API or our own proxy (probably overcomplicating this).

This is finally where the backend bois rise up.

Basic OG Tags for link previews, and page titles

Current link previews look like this:

Screen Shot 2021-03-20 at 5 46 32 PM

Similar opportunity to improve page titles:

Screen Shot 2021-03-20 at 5 47 04 PM

Might as well add a <meta description="..."/> while we're at it, since Google will likely be able to pick this up :)

Write comments for the entire codebase

Purpose:

Contributing to a repo takes a lot of courage, and coming face to face with a repo full of code with no clue what it does is a very intimidating thing. It is a priority to comment out our code base so that new people who wish to contribute aren't in the dark regarding how the code works, what components do what, what each of the classes do, or why we do something a certain way.
This can also serve as an addition resource to #6.

Link to the repo from the site

To make it easier to navigate the project & get started contributing, there should be a link to the repo from the main site.

Do we need to update designs before this issue is ready to be picked up? Not sure what the workflows should look like with design (do we make a new label for "design needed" ?)

Project Submission Form on Website

Instead of redirecting to third-party Google Forms, perhaps use something like Formik. It's super easy to use and you can drop some styles and bam! Easy to make form. Probably also setup an API path and some notification service (maybe emailing with nodemailer?)

Add semantic styles to links

When I generally see a link I expect that it has an underline, as is the general internet semantic with links, however on the MDX rendered documents there doesn't seem to be any styles added to links except bolding because of **...**.
page

The reason I recognize they link somewhere (besides being curious enough to click) is because you use action words such as "this" or "here" or a URL schema-like text is present. This may be fine in this situation (to an extent) but it is generally a better idea to have underlines when styling links.

Possible fixes:

  • Add underlines to links
  • Maybe change the color to a different one (blue?) to provide contrast and make them stand out

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.