Registration, for hackers!
Quill is a registration system designed especially for hackathons. For hackers, it’s a clean and streamlined interface to submit registration and confirmation information. For hackathon organizers, it’s an easy way to manage applications, view registration stats, and more!
After users login, the Dashboard displays the user’s application status and status-specific prompts to resend a verification email, view/edit their application or confirmation forms.
Statuses:
The Application tab takes users to their registration or confirmation form.
Hackathons commonly allow participants to register and be admitted as a team. The Team tab allows users to create or join a team with other users.
Admins can view stats, look through applications, or edit settings from the Admin panel.
The Stats tab summarizes useful registration statistics on the number of users in each stage of the process, demographic information, and miscellaneous event preferences like shirt sizes, dietary restrictions, or reimbursement requests.
The Users tab displays a table of users where admins can:
On the Settings tab, admins can easily control their event application timeline by setting registration / confirmation deadlines. They can also write custom waitlist, acceptance, and confirmation copy that users will see on their dashboard throughout the application process. The custom copy is interpreted as Markdown, so HTML and images can be added.
Requirement | Version |
---|---|
Node.js | 10.13+ |
MongoDB | 4.0+ |
Run the following commands to check the current installed versions:
node -v
mongo --version
How to upgrade to latest releases:
Getting a local instance of Quill up and running takes less than 5 minutes! Start by setting up the database. Ideally, you should run MongoDB as a daemon with a secure configuration (with most linux distributions, you should be able to install it with your package manager, and it'll be set up as a daemon). Although not recommended for production, when running locally for development, you could do it like this
mkdir db
mongod --dbpath db --bind_ip 127.0.0.1
Install the necessary dependencies:
npm install
We use dotenv
to keep track of environment variables, so be sure to stop tracking the .env
file in Git:
git update-index --assume-unchanged .env
Edit the configuration file in .env
for your setup, and then run the application:
gulp server
If you’d like to customize the text that users see on their dashboards, edit them at client/src/constants.js
.
Customize the color scheme and hosted assets by editing client/stylesheets/_custom.scss
. Don’t forget to use your own email banner, favicon, and logo (color/white) in the assets/images/
folder as well!
If you want to change the application questions, edit:
client/views/application/
server/models/User.js
client/views/admin/user/
and client/views/admin/users/
to render the updated form properly in the admin viewIf you want stats for your new fields:
server/services/stats.js
client/views/admin/stats/
To customize the verification and confirmation emails for your event, put your new email templates in server/templates/
and edit server/services/email.js
Contributions to Quill are welcome and appreciated! Please take a look at CONTRIBUTING.md
first.
If you have any questions about this software, please contact quill@hackmit.org.
Copyright (c) 2015-2016 Edwin Zhang (https://github.com/ehzhang). Released under AGPLv3. See LICENSE.txt
for details.