Skip to content

OUTspoken-RIT/website

Repository files navigation

OUTspoken Website

The webpages are automatically loaded into CampusGroups. Pages edited here will automatically update in CampusGroups.

Contents

Editing

Prerequisites

Node.js and NPM

This project uses Node.js and NPM. You can go to https://nodejs.org/en/download/ for steps to install both.

Git

You will need git to download and update the files. You can go to https://github.com/git-guides/install-git for steps to install git.

It's recommended you use a code editor such as Visual Studio Code so that you can easily make changes and push them to the website.

Clone the repo

Copy the files onto your machine by running the following command in your terminal

git clone https://github.com/OUTspoken-RIT/website.git
cd website

Install the dependencies

The website uses React and Next.js to convert custom components into a webpage. You can install both with the following command

npm install

See changes live

You can see your changes while editing by running the following command

npm run dev

It will allow you to view the website on your machine in real-time.

Push your changes to the site

You can push your changes to the website by running the following command

git add .
git commit -m "your message"
git push

Structure

The repo is split into 4 main folders:

website
├─ pages
├─ components
├─ styles
└─ utils

Pages

Full pages made up of the premade components.

website
└─ pages
    ├─ closet.jsx
    ├─ clubs.jsx
    ├─ index.jsx
    └─ team.jsx

These are the page files that are loaded directly into CampusGroups. These pages can be edited by editing these files.

Components

UI components (buttons, icons, boxes, cards, etc.) that are used to create the webpages.

website
└─ components
    ├─ ui
    ├─ layouts
    └─ composite
ui low-level one-function components like buttons, icons, logos, and containers
layouts used for organizing objects on the page
composite components made up of many other components (cards, infoboxes, etc)

Styles

The CSS files that control how content is displayed on each page.

website
└─ styles
    ├─ variables
    ├─ buttons.css
    ├─ colors.css
    ├─ composite.css
    ├─ containers.css
    ├─ globals.css
    ├─ icons.css
    ├─ layouts.css
    ├─ reset.css
    ├─ type.css
    └─ underline.css
variables sets root variables defining colors, heading styles, margin and padding, underline flags, etc.
buttons styles for buttons and icon buttons
colors styles for controlling the background of containers
composite styles for composite components
containers styles for boxes and simple cards
globals aggregates all styles and exports them together
icons styles for icons
layouts styles for layout components
reset reverts styles set by CampusGroups
type styles for headings and other text-focused elements
underline styles for regular and flag underlines

Utils

All the javascript helper code used to create components.

Component Catalog

For your use, I've gathered all the components together.

Typography

Most typography happens in the standard HTML elements, but here are all of them. Typography automaically adjusts size for desktop or mobile devices.

Headings 1-5

Use the regular <h1>-<h5> elements or use the h1-h5 class.

Heading 1 styles

<!-- regular h1 element -->
<h1>Heading 1</h1>

<!-- or use the h1 class -->
<p className="h1">Heading 1</p>

Heading 2 styles

<!-- regular h2 element -->
<h2>Heading 2</h2>

<!-- or use the h2 class -->
<p className="h2">Heading 2</p>

Heading 3 styles

<!-- regular h3 element -->
<h3>Heading 3</h3>

<!-- or use the h3 class -->
<p className="h3">Heading 3</p>

Heading 4 styles

<!-- regular h4 element -->
<h4>Heading 4</h4>

<!-- or use the h4 class -->
<p className="h4">Heading 4</p>

Heading 5 styles

<!-- regular h5 element -->
<h5>Heading 5</h5>

<!-- or use the h5 class -->
<p className="h5">Heading 5</p>

Subheading

Component <Subheading>
Source /ui/type/Typography.jsx

Subheading styles

<Subheading>This is a subheading.</Subheading>

Body

Is applied to any text not already styled.

Body styles

<p>queerum ipsum dolor sit amet.</p>

Links

Use <Link> element for local links (page to page). Use <a> element for external links (linking to another website).

Link styles

<a>this is a link</a>

<Link>this is a link</Link>

Underline

Component <Underline>
Source /ui/type/Underline.jsx

Light underline colors Normal underline colors Dark underline colors

<Underline shade="light" variant="rainbow">This text is underlined.</Underline>

Speech Bubble

Component <SpeechBubble>
Source /ui/type/Typography.jsx

Speech bubble styles

<SpeechBubble tail="down right">This is a speech bubble.</SpeechBubble>

Emphasis Bubble

Component <Bubble>
Source /ui/type/Typography.jsx

Bubble styles

<Bubble>I'm emphasized!</Bubble>

Buttons

These buttons are ready to go! Just plug in the link.

Link Button

Component <LinkButton>
Source /ui/Buttons.jsx

Button styles

<LinkButton color="primary" href="/">I'm a button</LinkButton>

Icon Button

Component <IconButton />
Source /ui/Buttons.jsx

Icon button styles

<IconButton icon="discord" href="/" />

Containers

Boxes for holding elements!

Box

Component <Box>
Source /ui/containers/SimpleBoxes.jsx

Box styles

<Box color="foam">
  <p>queerum ipsum dolor sit amet.</p>
</Box>

Dashed Box

Component <DashedBox>
Source /ui/containers/SimpleBoxes.jsx

Dashed box styles

<DashedBox color="foam">
  <p>queerum ipsum dolor sit amet.</p>
</DashedBox>

Fancy Box

Component <FancyBox>
Source /ui/containers/FancyBox.jsx

Fancy box styles

<FancyBox>
  <FancyBoxHeader>
    <h2>I am the header</h2>
  </FancyBoxHeader>
  <FancyBoxContent>
    <p>I am the content</p>
  </FancyBoxContent>
</FancyBox>

Assets

Every OUTspoken pride flag, logo, icon, and wordmark we've made!

Pride Flags

Component <PrideFlag />
Source /ui/assets/flags/Flags.jsx

Pride flags

<PrideFlag variant="progress" />

Icons

Component <BrandIcon />
Source /ui/assets/logos/Logos.jsx

Icons

<BrandIcon shape="square" color="rainbow" />

Wordmarks

Component <Wordmark />
Source /ui/assets/wordmarks/Wordmark.jsx

Wordmarks

<Wordmark style="lockup" />

OUTspoken Logos

Component <Logo />
Source /ui/assets/logos/Logos.jsx

Outspoken logos

<Logo weight="solid" color="rainbow" />

Other Logos

Component <SecondaryLogo />
Source /ui/assets/logos/Logos.jsx

Other logos

<SecondaryLogo logo="rainbow-heart" />

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors