Skip to content
This repository has been archived by the owner on Oct 16, 2019. It is now read-only.

unicsmcr/www

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HackSoc Web Application

The official website of HackSoc from The University of Manchester. We also have a Facebook and LinkedIn page!

Getting Started

Follow these instructions to run the website on your local machine.

Prerequisites

Required

  • Download and install the Go distribution from here.

Optional

  • Enabling reCAPTCHA requires a secret key and a site key. The first two steps of this tutorial explain how to get them.
  • To enable SendGrid, create a free account and get an API key.
  • A MySQL database is needed by certain features (such as signing up). Run the queries from the sql folder to generate the required tables in a new database. To connect the website to the database, a data source name (DSN) must be provided. Read this for details on how a DSN string is formatted.

If you choose to ignore these optional prerequisites, certain parts of the website may be deactivated or not work as expected.

Installing

Download the Package

Install the package to your $GOPATH using the go tool from the command line:

$ go get github.com/hacksoc-manchester/www

Make sure Git is installed on your machine and referenced by your system's PATH.

Environment Variables

Create a file called .env in the project root directory and make sure it's added in .gitignore (if using Windows, you might have to name it .env.). Paste the following text in the file and edit the variable values sensibly:

HTTP_PLATFORM_PORT="default port is 8080"
NOREPLY_EMAIL="noreply email used by the SendGrid API"
CONTACT_EMAIL="contact email used by the SendGrid API"
SYMMETRIC_KEY="personal symmetric key (can be of length 16, 24 or 32). keys are more secure"
RECAPTCHA_SITE_KEY="your reCAPTCHA site key"
RECAPTCHA_SECRET_KEY="your reCAPTCHA secret key"
MYSQL_CONNECTION_STRING="your MySQL connection string"
SENDGRID_API_KEY="your SendGrid API key"
FB_USER_TOKEN="your Facebook user token"

Starting the Website

Go to the hacksoc-manchester/www folder and run the following go command in your shell:

$ go run app.go

Running Tests

Go to the hacksoc-manchester/www folder and run the following go command in your shell to run the predefined tests:

$ go test ./...

Authors

See the CONTRIBUTORS file.

License

This project is licensed under the MIT License - see the LICENSE file for details.