codefortulsa / website

Code For Tulsa Website Update 2022
https://www.figma.com/file/maf7XD1XhbIKlJn77P2tIS/Code-for-Tulsa-Website?node-id=0%3A1
8 stars 10 forks source link
# Code For Tulsa Official Website ![Code For Tulsa Logotype](https://raw.githubusercontent.com/codefortulsa/website/main/content/asset/cft%20full%20name(cropped).png) [![site status](https://img.shields.io/website?logo=heroku&url=https%3A%2F%2Fcodefortulsa.org&style=plastic)](https://codefortulsa.org) [![Deploy to Staging](https://github.com/codefortulsa/website/actions/workflows/deploy-staging.yml/badge.svg?branch=dev)](https://github.com/codefortulsa/website/actions/workflows/deploy-staging.yml) [![version](https://img.shields.io/github/package-json/v/codefortulsa/website?logo=semver&style=plastic)](https://semver.org/) [![license](https://img.shields.io/github/license/codefortulsa/website?logo=open-source-initiative&color=%233da639&style=plastic)](https://choosealicense.com/licenses/)
[![contributor count](https://img.shields.io/github/contributors/codefortulsa/website?color=blue&logo=github&style=flat-square)](https://github.com/codefortulsa/website/graphs/contributors) [![commit frequency](https://img.shields.io/github/commit-activity/m/codefortulsa/website?color=blue&logo=github&style=flat-square)](https://github.com/codefortulsa/website/graphs/commit-activity) [![last commit](https://img.shields.io/github/last-commit/codefortulsa/website?color=blue&logo=github&style=flat-square)](https://github.com/codefortulsa/website/commits/main)
[![follow on twitter](https://img.shields.io/twitter/follow/codefortulsa?style=social)](https://twitter.com/intent/follow?screen_name=codefortulsa) [![find us on the Techlahoma slack](https://img.shields.io/badge/Techlahoma-000?style=social&logo=slack&label=join%20our%20Slack%20workspace)](https://techlahoma.slack.com/) [![bootstrapped with NextJS](https://img.shields.io/github/package-json/dependency-version/codefortulsa/website/next?color=black&label=nextjs&logo=next.js)](https://nextjs.org) [![made with react](https://img.shields.io/github/package-json/dependency-version/codefortulsa/website/react?color=%2361dafb&logo=react)](https://reactjs.org/) [![markdown support with unified.js](https://img.shields.io/github/package-json/dependency-version/codefortulsa/website/unified?color=white&logo=markdown)](https://unifiedjs.com/) [![typed with typescript](https://img.shields.io/github/package-json/dependency-version/codefortulsa/website/dev/typescript?logo=typescript)](https://www.typescriptlang.org/) [![pre-processed with postcss](https://img.shields.io/github/package-json/dependency-version/codefortulsa/website/dev/postcss?color=%23DD3A0A&logo=postcss&logoColor=%23DD3A0A)](https://postcss.org/) [![styled with tailwindcss](https://img.shields.io/github/package-json/dependency-version/codefortulsa/website/dev/tailwindcss?color=%2338bdf8&logo=tailwindcss)](https://tailwindcss.com/) [![linted with eslint](https://img.shields.io/github/package-json/dependency-version/codefortulsa/website/dev/eslint?color=%238080F2&logo=eslint&logoColor=%238080F2)](https://eslint.org)

Code For Tulsa, an official brigade of Code For America, hosts a website and blog at codefortulsa.org. This is that website's working repository.

The Code for Tulsa website aims to be a beacon for engagement in civic tech volunteer opportunities within the greater Tulsa area.

The site is currently undergoing a major update. See below for more information

Links

Table of Contents

Background

This repo started as an effort to modernize the core site and create a dynamic working environment that facilitates additional contributions from current and future volunteers of all backgrounds.

In the early stages of this redesign project, the requirements were simple: create a web blog that facilitates content contributions from non-technical volunteers. Because of this, the project was initially bootstrapped as a static Gatsby site.

Soon after, discussions began about integrating other resources utilized by the organization, such as Twitter, Slack, Meetup, etc. It was agreed that a more flexible framework was desired to keep up with the dynamic demands of the organization and provide broader variety for volunteer engagement. The project was migrated to Next.Js in January 2022 and adapted for deployment on serverless platforms.

While the infrastructure now exists for more complex features, every effort should be made to implement them in as low resource/cost-effective a manner as possible by using static or incremental generation, external APIs, and client-side offloading wherever possible.

Installation

Pre-Requisites

Install the LTS version of Node:

# via nvm (recommended) https://github.com/nvm-sh/nvm
https://github.com/nvm-sh/nvm

# via pre-built installer
https://nodejs.dev/download/

Install Yarn:

npm install --global yarn

Local Development

Clone the repo and cd into the directory:

git clone https://github.com/codefortulsa/website.git ./code-for-tulsa-website
cd ./code-for-tulsa-website

With Docker

Install Docker

Run the app with docker compose (the first time you run this it will have to build images and install dependencies which could take a few minutes)

docker-compose up

Without Docker

Install packages & start the dev server:

yarn install
yarn dev

Run e2e and component tests with Cypress locally:

Component tests go in the cypress/component directory

End to End tests go in the cypress/e2e directory

Features

Known Issues / Limitations

the site is undergoing an overhaul. If you'd like to contribute content, design, or development, please reach out to our team

Site

Maintainers / Contributors

Support

Volunteer Contact for Website Development:

Volunteer Contact for all other areas:

Leadership

Contributing

We welcome contributions from participants of all backgrounds! Writers, designers, and developers should read CONTRIBUTING.md to learn more. You can also reach out to us - we're friendly!

Code of Conduct

Code For Tulsa is a user group umbrellaed under the Techlahoma Foundation. All Code For Tulsa contributors, participants, and organizers must adhere to the Techlahoma Code of Conduct.