This site was developed as a tool to the reception of the electrical engineering freshmen from 2023, at EESC-USP. It's objective is to display all relevant info regarding the university.
git clone git@github.com:sa-sel/site-bixos-2023.git
cd /path/to/site-bixos-2023/
npm install
ng serve
- Visit localhost:4200 in a browser
The code itself (the majority of it) lies inside of /src/app/
. In there, there are the following directories:
shared/
: utility components that'll be used in multiple parts of the code, inside other components (e.g.: responsive image grid, button, etc)core/
: main top-level components (e.g.: navbar, footer, "Kit Bixo" screen, etc)models/
: enums and type objectsservices/
: all Angular servicespipes/
: all Angular pipes
Each of those directories has a path alias setup (@shared
, @core
, @models
, @services
and @pipes
), so you should import using these unless you're in the same directory, in which case you'll use the relative path (./path/to/module
) in order to avoid circular dependencies.
Whenever you create a new module, you should "re-export" all of it's exports from their directory's index.ts
.
We're using ESLint for linting and Prettier for autoformatting. Download and configure their extensions for your IDE - e.g.: for VSCode there is Prettier and ESLint.
Before commiting, remember to run npm run format
and then npm run lint
to see if there is any formatting problem with your code.
Write commit messages following this style guide and be sure to make use of git commit --amend
and --no-edit
when necessary. Write commit message that actually describe (summarize) the changes you made - do not commit stuff like Fix bug
, Fix
, Fix bug 3
, Fix bug (again)
.
Aside from that, start all your commit messages with #<ISSUE/TASK_NUMBER> -
. E.g., when working on a task #7
, you commit the creation of a modal component: #7 - Create modal component
.
-
Clone the repository
-
Choose a task you want to work in the board
- The task must be in the 'To do' column and have no assignees
- Prioritize tasks with higher priority: enhancement < moderate < important < critical
- Check if the task has any dependencies and, if so, their dependencies were already closed
-
Assign the task to yourself and move it to the 'In progress' column
-
Create a new branch with the format
issue-<ISSUE/TASK_NUMBER>
-
Make all your changes in that branch
-
Merge the
main
into your branchgit fetch --all
git merge origin main
- Resolve merge conflicts
git commit
(use default commit message)
-
git push --set-upstream origin issue-<ISSUE/TASK_NUMBER>
-
Make a PR
- Follow the instructions in the PR template
- Move the task to the 'In PR' column in the board
-
Request @lucasvianav's review
-
Merge your PR only when:
- It was approved (in code review)
- All CI checks have succeeded
- There are no merge conflicts