Skip to content

do-community/hacktober-board

Repository files navigation

Hacktober Board

Hacktober-board is an unofficial Open Issues Board for Hacktoberfest. This project is built with Laravel.

It is intended to help users, especially beginners, finding issues they can contribute to in order to participate in Hacktoberfest.

Setting Up a Dev Environment

A Docker dev environment is included. You'll need Docker and Docker Compose installed. To set these up, you can follow this tutorial.


Fork and Clone

If you are planning to contribute, you will need to:

  1. fork this repository in GitHub
  2. create a local clone of your fork.

If you're not familiar with this process, click here for the really detailed version.

If you're not planning to contribute and just want to play with hacktober-board in a local dev environment, you can simply clone this repo

Running the App on Docker

First, you need a .env file. If you have a particular need to customize your .env you may do so, but for most developers you can just use .env.example. Run this in your project root (where you cloned the repo):

cp .env.example .env

Now get your dev environment up and running by bringing up the docker containers:

docker-compose up

When the containers are up, you need to create a new MySQL user by logging in the container:

docker-compose exec db bash

Log into MySQL:

mysql -u root -p

The root MySQL password for the db container is password.

Then, create a new user while granting permissions to the hacktober database, and flush privileges:

GRANT ALL ON hacktober.* TO 'hacktober-user'@'%' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

Exit the MySQL prompt and the container, coming back to your regular shell.

To create the database tables, run migrations inside the container:

docker-compose exec app php artisan migrate

To fill the database with sample data, run the db:seed command:

docker-compose exec app php artisan db:seed

To import real issues from Github, you'll need to define a Github API Token in the .env file. Look for the variable GITHUB_API_TOKEN.

After setting up the API key, you can import issues with:

docker-compose exec app php artisan hacktober:fetch

This will populate the database with real issues from Github.

About

Hacktober-Board was initially created at the internal DigitalOcean Hackaton a.k.a. Shark-a-Hack, September 2019 edition.

The front-end was designed by Eileen Ani based on the official Hacktoberfest page.

Contributing

Contributions are welcome. Please create an issue or assign yourself an existing issue so everybody knows what is taken. This can be as easy as leaving a comment like "I'll grab this one" in the issue you want to work on :)

If you are new to open source and Git, you can check this excellent series on How to Contribute to Open Source by Lisa Tagliaferri on the DigitalOcean Community.