/LaraHack

Administration system for Hackathons :chart_with_upwards_trend: !

Primary LanguagePHPGNU Affero General Public License v3.0AGPL-3.0

LaraHack banner

LaraHack is a complete administration systems designed especially for hackathons and similar competitions .

For participants , it's a clean and simple to submit application with or without team and confirm attendance .

For Organizers , it's an easy way to create your hackathon website , view registrations , analyze statistics , Check-In and much more !

Features

  • WebSite Template : LaraHack has a website template that contains all necessary sections ( About,Challenges,Sponsors.. ) with a clean code so you can modify and customize it .

  • Registration : With LaraHack hackers can register easily with or without a team through a register view that is similar to TypeForm and also.

  • Statistics : The admin has access to a lot of statistics about registration such us registrations rate per day , decisions about hackers ... and muc more !

  • Dashboard : Admin can view all applications to the hackathon , take a decision and export data to Excel or CSV .

  • Mailing : LaraHack is able to send emails such as :

    • Successful application: which is sent to every hacker who apply , informing him that his application is done successfully and providing him with his team's name and team's code if he choosed to register with a team .
    • Decision : Waiting list , Rejected Or Accepted with confirm attendance link .
  • Check-In : Allows organizers to check the participants present at the event day .

  • Settings : Configure some essential settings ( at the moment it contains only the possibility to close or open registrations ) .

Screenshots

Statistics Page Registration Page Hackers Table Check-In Page

Setup

Quick deploy with Heroku

Requirements

Requirement Version
PHP 7.1+
Composer 1.8+
MySQL 8.0+

Run the following commands to check the current installed versions:

php --version

For MySQL You can run this command in MySQL Commande Line Client :

select version() ;

Deploy locally

Getting a local instance of LaraHack up and running is very quickly ! Start By Creating A Database on MySQL and go with these steps :

1 - Clone the repository and cd to the project folder:

git clone https://github.com/ScientificClubofESI/LaraHack 
cd LaraHack 

2 - Install the necessary dependencies:

composer install  

3 - Create your .env file from .env.example and generate an app key ( Don't forget to configure it with the database, and your email , if the host is googlemail so let mail driver , host and port as it was in env.example ) :

cp .env .env.example
php artisan key:generate  

4 - Migrate the database and start listening a queue in different terminal :

php artisan migrate 
php artisan queue:listen database 

5 - Finally run the server :

php artisan serve

Customizing for your event

Hackathon name

Don't forget to put your hackathon name in environment variable APP_NAME ( .env file )

Hackathon Logo

Put your hackathon logo in the folder /public/images with the name of LOGO.png

Hackathon Landing Page

You find the hackathon landing page section in the folder /resources/views/sections with a clean and simple code

Mail Content

To customize the decision and confirmation emails for your event, edit email templates in /resources/views/emails

Notes :

  • Access to the admin dashboard via the link /admin
  • The default mail and password are : admin@cse.dz and cse you can change them in the migrations folder database/migrations

Contributing

Do you have a feature request, bug report, or patch? Great! See CONTRIBUTING.md for information on what you can do about that. Contributions to LaraHack are welcome and appreciated !

Feedback / Questions

If you have any questions about this software, please contact ha_zellat@esi.dz or ga_namani@esi.dz .

License

Copyright (c) 2019 Scientific Club Of ESI (https://github.com/ScientificClubofESI). Released under AGPLv3. See LICENSE for details.