/wnb-rb-site

The website of WNB.rb, a virtual community for women and non-binary Rubyists.

Primary LanguageJavaScript

WNB.rb logo

WNB.rb

Follow us on TwitterJoin Our Community

WNB.rb is a virtual community for women and non-binary Rubyists. This is the repo for WNB.rb's website, built by and for our community.

Code of Conduct ❤️

All contributors to this repository must follow the WNB.rb code of conduct. Those who violate the code of conduct will be reported to GitHub support and banned from all WNB.rb platforms, including GitHub and Slack.

Getting Started 🏁

Before you try to set up this app, make sure you have the following installed on your machine:

  • Ruby (3.0.3)
  • Node (16.3.0) + Yarn
  • Postgres (13.3)
  • Foreman for managing multiple servers

You must also fork and clone this repository.

For help getting set up, refer to the Contributor Resources section of this document.

2. Set up the repo

To install dependencies and setup the database, run:

make setup

3. Set environment variables

Running the job board locally requires two environment variables. To set up your environment variables, run the following command:

cp .env.template .env

Then, edit .env and set the following environment variables:

  • JOB_BOARD_PASSWORD: this determines the password for the job board
  • JWT_HMAC_SECRET: this sets the secret key used to encode the token for job board authentication

4. Run the tests

  • To run the backend tests: rspec
  • To run the frontend tests: yarn jest app/javascript

5. Start the server

To start both the frontend and backend servers at the same time, run:

foreman start

In your browser, navigate to localhost:5000 to see the app in action!

Alternatively, you may run the frontend and backend servers separately with these two commands:

rails s
bin/webpack-dev-server

This may be helpful for debugging, but generally should not be necessary.

Running rake tasks

To execute rake tasks, run:

foreman run rake [NAMESPACE]:[TASK_NAME]

Contributing 🤝

1. Assign yourself an issue from our Issues tab

2. Write your code and create a pull request

  • Note that your pull request may require one or more tests. Tests are required for almost all backend changes, and all frontend logic-related changes. Style or copy changes do not require you to write a test.
  • For a style or copy change, please provide side-by-side screenshots showing how the app looks before and after your changes.

Contributor Resources 📚

Need some help contributing to our app? Check out the resources below for more information about installing and using various third-party tools.

PostgreSQL

Ruby

Node

GitHub

Reporting Issues 🐞

To report a bug or request a new feature, please open an issue.