We are a community of software engineers on a mission of lifelong learning.
CS Career Hub was created to help guide engineers at any point in their career. Over 20,000 users have joined our community, ranging from first-year students to hiring managers. In the past few years, we've facilitated thousands of mock interviews and resume reviews with candidates. With plenty of plans on the roadmap, you can expect even more to come.
And this is our website! You'll find information about CSCH, the staff that runs it, links to the Wiki & FAQ, and ways to contact us.
Interested in seeing what's next or contributing? Take a look at our roadmap.
We are using: NextJS, Netlify, and Airtable.
- NextJS is a React-based static site generator (SSG).
- Netlify autodeploys (and builds website) on master commits. We also use it to store recieves our form data.
- Airtable is a no-code database that comes with an API (and API reference for our tables) and is easily integrated into apps. It is especially easy to integrate with NextJS and other popular JS-based SSGs.
For our data, we've integrated Airtable with NextJS, but updates won't automatically be shown on website. We will need to bump Netlify to build and deploy by committing so that most up-to-date Airtable data shows up on website since NextJS is an SSG. We can automate this through Airtable webhooks, but it may be for paid plans only. An alternative may be to write a script. For now, we will have to bump Netlify by pushing a commit to master.
-
Optional: Join us on the CSCH Discord server where we will give you access to the website dev channel where we discuss and test the website.
-
Clone (or fork) the repository.
-
Install dependencies with
yarn install
. -
Create a
.env
to store environment variables needed for Airtable. If you need credentials, please ask the code owners. -
Run the development server with
yarn dev
. -
Open http://localhost:3000 with your browser to see the result. The page auto-updates as you edit any file.
-
In development, create a branch with the following naming scheme.
feature/<yourfeature>
bug/<yourbugfix>
docs/<yourdocchange>
test/<yourtestingchange>
misc/<yourmiscchange>
content/<yourcontentchange>
- Once you've made change, create a pull request to the this repo's
master
branch with the type of change, which should correspond to the first part of your branch name, in the PR title.
branch name: docs/change
PR title: [docs] Changed this and that in the docs
All PRs will require at least one review from CSCH staff. If it's been over a week, feel free to ping us once in the Discord.