# Custom projects

Decided to make a custom project? Awesome! Right this way.

Whatever that one project you've been thinking of doing forever - whether that be a custom 3D printer, a full mechanical keyboard, or something else - now's your chance to make that real

You can choose from one of the following tiers:

- 4 point project with up to $50 USD in funding
- 6 point project with up to $150 USD in funding (ex: keyboard, rp2040 devboard keychain)
- 10 point project with up to $350 USD in funding (ex: 3D printer, antweight combat robot)

The more points a project is worth, the higher the complexity & quality requirements will be. Please read over the [Project guidelines](/advanced/project-guidelines) to get a better idea of what they are

Before you go crazy with ideas though - please be resourceful! This is **not** a free money glitch. [Hack Club](https://hackclub.com) is a financially limited non profit, and every dollar we can save together goes towards the next program.

Any questions? Ask in the [#highway](https://hackclub.slack.com/archives/C08Q1H6D79B) channel in slack!

---

## Here's how it works:


### 1. Set up your project & add it to the gallery

Before you start working on your project, you need to do some setup:

#### 1. Create a git repository for your project

Create a repository for your project! Most people use GitHub, but you can use any git provider you want

#### 2. Start your journal

Next, start a journal by creating a JOURNAL.md file in your repo. At the very top, include the following data:

```
---
title: "Your Project Name"
author: "Your name (name or slack username)"
description: "Describe your project in a short sentence!"
created_at: "2024-03-20"
---
```
<br>
Journaling is mandatory for custom projects.

#### 3. Make a PR to add it to the gallery

Next, add it to the gallery! Make a pull request to the [submissions.yml](https://github.com/hackclub/highway/blob/main/submissions.yml) file in the site's repository and add your project's URL

```
projects:
  - "https://github.com/Dongathan-Jong/SpotifyDisplay"
  - "your_repo_link"
```
<br>
As long as your PR doesn't have any conflicts, we'll merge it and your submission will be added to the project list! Other people will be able to see your journal & see what you're up to.

### 2. Start designing!

Start designing your project! Check out the resources on the left side for inspo, part sourcing, etc

Make sure to read over the [project guidelines](/advanced/project-guidelines) page of the website to get an idea of what you should build!

### 3. Submit your design

The submission form is located in the instructions in the [Submitting](/advanced/submitting) page. READ THE INSTRUCTIONS. DO NOT BLINDLY SUBMIT

### 4. Get a grant to build it!

Once you're approved, you'll get an HCB Credit Card with the funding you submitted for, and a *half* of the points that your project is worth

### Submit your finished project

To collect the other half of your points, you need to actually submit your physically built project! To do so, fill out the following form:

(form WIP, will be out when people are done projcts)


---

### On Journaling

This is *the* most important part of the whole process! Journaling your progress is how to keep track of how your project is going. Beyond that, it's also a way to tell a story and have something to look back at many years down the line.

Don't just journal your wins! It's much, *much* better to maintain a smaller, more consistent one every day - it'll capture a more realistic story to what things were really like. Fails are important too.

Journaling is **mandatory** to get your submission approved! Poor quality journals will be rejected. 

The general formatting of every journal entry should look something like this in markdown:

```
# June 8th: Got the screen to work!

[actual journal content - what did you do?]

[insert pictures of what you're working on!]

**Total time spent: 2h**
```
<br>

Do NOT have:

- Wall of timestamps with barely any descriptions
- No images
- Terrible formatting that's impossible to read
- AI generated journal entries; anything written by AI will be immediately rejected

Generally, it's OK if english isn't your first language and you're not the best at it. We're not marking you on your writing skills! What does matter is you try your best, the words are your own (no generative AI), and it's legible.

**You can see what the optimal journal entry looks like [here](/advanced/example-journal)**

---

### Extra advanced projects - get up to 10 points & up to $350 USD

Most projects (keyboards, game consoles, custom devboards, etc) can all be built under $150 USD, and while fairly difficult, are still fairly achievable within a couple weeks.

Some projects though are above and beyond - a DIY 5-axis 3D printer, a go-kart from scratch, etc take significantly more time, require a larger budget, and are overall a lot harder to execute.

If this is you, then pitch your project in [#highway-pitstop](https://hackclub.slack.com/archives/C08S22XRYMU) when you're almost done!

Even if the project would fit under $150, if it's particularly complicated (beyond the standard project guidelines) then you should still pitch it in pitstop! Worst case you get some feedback on your project so far
