The Core repository is the core of HackBeanpot's webapps! Here we house the main and livesites, and application portal!
-
Clone repo & cd into directory
git clone [email protected]:HackBeanpot/core.git cd core
-
Install & use Node v.24
nvm install 24 nvm use 24
-
Install packages
yarn install
-
Run each app with the following commands:
mainsite:
yarn run dev
livesite:
yarn run dev:live
app portal:
yarn run dev:app
🤡 Branches
The main branch acts as our production branch, meaning anything that gets pushed to main will be deployed to the production site by Vercel. To streamline development, all feature branches are created off of the dev
branch (mainsite & livesite only). App portal development is done off of dev-app-portal
. Please refer below for examples on feature/bugfix branch naming conventions:
mainsite/feature/<feature-description>
livesite/bugfix/<bugfix-description>
app-portal/hotfix/<hotfix-description>
Once a sprint is complete or you are ready to deploy to the prod branch, please create a release as part of the deployment. Release versioning will operate like: year.sprint-number.minor-changes
. An example for this year would be: 25.1.9
.
🎡 Directory Structure
apps
- contains directories for each application.
packages
config-tailwind
- tailwind theme/breakpoint configs
ui
- shared components use among 1 or more of the applications
utils
- utility functions, fonts & hooks
🎫 Misc
To upgrade node version, ensure to change the version in .nvmrc
and in package.json
.
If you would like to modify the build hooks, also refer to package.json
.
docs
: a Next.js app with Tailwind CSSweb
: another Next.js app with Tailwind CSSui
: a stub React component library with Tailwind CSS shared by bothweb
anddocs
applications@repo/eslint-config
:eslint
configurations (includeseslint-config-next
andeslint-config-prettier
)@repo/typescript-config
:tsconfig.json
s used throughout the monorepo
Each package/app is 100% TypeScript.
Additional Documentation:
- Tailwind CSS for styles
- TypeScript for static type checking
- ESLint for code linting
- Prettier for code formatting