grease

Version, currently master branch1 version
  • master branchlatestAug 25, 2021

github.com/smores56/grease_crystal

The backend for the Georgia Tech Glee Club's internal site

0 stars
0 dependents
License: MIT

Installation

# Add this to your shard.yml
dependencies:
  grease:
    github: smores56/grease_crystal
    branch: master

master is a branch, not a release, so this tracks it rather than pinning a version.

Then run:

shards install

shard.yml

Crystal
0.35.0
License
MIT
Author
Sam Mohr
Target
  • grease from src/grease.cr

Dependencies

Runtime Dependencies

  • db*github: crystal-lang/crystal-db
  • mysql*github: crystal-lang/crystal-mysql
  • dotenv*github: xtokio/dotenv
  • crystar*github: naqvis/crystar
  • graphql*github: graphql-crystal/graphql

README

grease

Build Status

The backend for the Georgia Tech Glee Club's internal website. You can find the frontend (written in React + TypeScript) here.

This GraphQL API is written in Crystal.

Note: If you are curious about the history of this project or why Crystal was the language used, please read the corresponding doc.

Usage

This API runs using the CGI interface, and exposes a few endpoints:

EndpointPurpose
/graphqlThe GraphQL API itself
/graphiqlThe GraphiQL page, for exploring the API
/upload_frontendUpload archived build of the [frontend][frontend].

You will be able to access the live version of the GraphiQL instance running at https://gleeclub.gatech.edu/cgi-bin/api/graphiql.

Installation

Before you can build, deploy, or contribute to this project, you will need to install crystal first.

For testing, you will also want to make sure to install MySQL and Python 3.

More information will be provided on how to test this service once development of features finishes first.

Deployment

To deploy, you will need access to an account that hold the role of Webmaster on the internal website. Login to that account to get an API token.

Then all you have to do is set the environment variable GREASE_TOKEN to your API token, and then run sh build_and_upload.sh.

Note: You can retrieve your token on the internal site from the webmaster tools admin tab if you are already logged in, or the login mutation on the GraphQL API if you are not.

Contributing

  1. Create your feature branch (git checkout -b my-new-feature)
  2. Commit your changes (git commit -am 'Add some feature')
  3. Push to the branch (git push origin my-new-feature)
  4. Create a new Pull Request

Contributors