I Demoed

Showcase your participation in the hackathon community.

Usage

https://idemoed.vercel.app/api/wall?username=<USERNAME>&limit=<LIMIT>&level=<LEVEL>&events=<EVENTS>&pr=<PR>&size=<SIZE>&type=<TYPE>&placeholder=<PLACEHOLDER>
username

Devpost username of the user. Found at devpost.com/<username>.

limit

Integer representing the maximum number of hackathons to return for a user. Default: 100. Only applies when the username parameter exists.

level

Integer representing the minimum level of participation in a hackathon. Default: 1. Only applies when the username parameter exists.
0: All registered hackathons
1: Only hackathons where the user submitted a project
2: Only hackathons where the user won a prize

events

Comma-separated list of event names to add to the wall. Names correlate to the name of the image file in badges/devpost/. Add "hdb_" before the name of the badge if referring to the badges/alt/ directory.
Examples:
?events=tamuhack2020,howdyhack2020
Adds tamuhack2020.png and howdyhack2020.png from badges/devpost/ to the generated image.
?events=hdb_hh20,howdyhack2020
Adds hh20.png from badges/alt/ and howdyhack2020.png from badges/devpost/ to the generated image.

pr

Integer for the number of badge tiles per row in the generated image. Default: 5.

type

The format of the generated image, either svg or png. Default: svg.

size

Integer representing the length of each generated badge. Default: 100. Only applies when type is png.

placeholder

Specifies what should be done if the sticker is not matched in the repository. Default: Generates hexagon badge using the event'sDevpost image. If placeholder=duck it will use the MLH duck demo sticker as the placeholder.

Submit A Badge

Want hackers to showcase your hackathon event badge or want to add past events you participated in? Follow the steps to add your badge to the GitHub repository.

Devpost Hackathons

If your hackathon is on Devpost, visit the issue page and select New issue > Submit Devpost Badge with the following information.

  • Badge Image: PNG image of a hexagon sticker with the correct dimensions (minimum 181x209)
  • Devpost Link: Link to event on Devpost (e.g. tamuhack2020.devpost.com)

Alternatively, you can open a Pull Request. Place your event badge PNG image in /public/badges/devpost with the image name as <event_name>.png corresponding to the event URL on Devpost <event_name>.devpost.com.

Other Hackathons/Events

If your hackathon does not use Devpost but would still like users to showcase the badge, visit the issue page and select New issue > Submit Other Badge with the following information. Badges added using this method will not be automatically matched through devpost usernames and will need to be manually specified in the events parameter.

  • Badge Image: PNG image of a hexagon sticker with the correct dimensions (minimum 181x209)
  • Metadata: Information about your badge.
    {
      "name": "Event name",
      "id": "Will be used as identifier and as image name (<id>.png). Must not already exist in /public/badges/alt",
      "description": "Optional description of event",
      "url": "Optional event link"
    }

Alternatively, you can open a Pull Request. Place your event badge PNG image in /public/badges/alt with the image name as <id>.png and the metadata file as <id>.json in /public/badges/alt_meta. id must be unique!

Badge Creator

Have an MLH event but do not have a sticker file? Use the template to recreate the hexagon badge from your event. Then follow the steps above to add your badge to the repository.

Devpost API

A side-benefit of this project is a providing a basic API to obtain devpost information for a user. There are currently two endpoints available.

/api/user/<devpostUsername>/hackathons
devpostUsername

Devpost username of the user. Found at devpost.com/<username>.

Returns listing of hackathons that the user has participated in.

[
  {
    "id": "tamuhack2019.devpost.com",
    "title": "TAMUhack 2019",
    "link": "https://tamuhack2019.devpost.com/?ref_content=default&ref_feature=challenge&ref_medium=portfolio",
    "badgeImage": "https://challengepost-s3-challengepost.netdna-ssl.com/photos/production/challenge_thumbnails/000/738/497/datas/large.png",
    "userSubmittedProject": true,
    "userWonPrize": false
  }
]
/api/user/<devpostUsername>/projects
devpostUsername

Devpost username of the user. Found at devpost.com/<username>.

Returns listing of projects for a user.

[
  {
    "title": "Full House",
    "link": "https://devpost.com/software/fullhouse",
    "numLikes": "7"
  }
]
Contribute on GitHub