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
Installation
# Add this to your shard.yml
dependencies:
grease:
github: smores56/grease_crystal
branch: mastermaster is a branch, not a release, so this tracks it rather than pinning a version.
Then run:
shards installshard.yml
- Crystal
0.35.0- License
- MIT
- Author
- Sam Mohr
- Target
greasefrom src/grease.cr
Dependencies
Runtime Dependencies
README
grease
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:
| Endpoint | Purpose |
|---|---|
| /graphql | The GraphQL API itself |
| /graphiql | The GraphiQL page, for exploring the API |
| /upload_frontend | Upload 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
- Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin my-new-feature) - Create a new Pull Request
Contributors
- Sam Mohr - creator and maintainer
Documentation
Built from the current release. The first visit to a release nobody has asked for starts its build.
Links
This branch
- Branch
master- Seen
- Aug 25, 2021
- Crystal
0.35.0- Indexed
- yes
Dependents
No indexed shard depends on this one yet.
Repository
github.com/smores56/grease_crystal
Metadata
- Created
- Aug 12, 2026
- Updated
- Sep 27, 2026
- Synced
- Sep 27, 2026
- Versions
- 1