All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Rename
how_to_apply
tohowToApply
- #110 - Sort jobs by
listingDate
- #111 - Form best practices - Signup - #107
- Form best practices - Login - #108
- Form best practices - Edit Profile - #109
- Lazy Loading and Code Splitting - #105
- Test database - #91
- Accidental Logging - #97
- Fix Long Details Link - #96
- OptionsPanel Search returning old job format - #98
- Pagination Reset on Last Page - #99
- Template Configuration - #93
unique()
function not working as expected, resulting in search results containing more entires than jobs in DB - #85- Now able to access
Details
page with a direct url - #80 ProfileAccountStats
container width spilling out on mobile - #93
- Ability to filter by jobs with a
type
of"Contract"
- #77
- Margin on Account Details - #71
- Don't make BE call if no jobs exist - #73
- Text when no results display in Hidde/Saved Jobs - #76
- Hiding a job will remove it from the current jobs list - #75
- Redesigned the
Button
component - #72
- Message when a user is not found in the DB - #67
- Ability to Search from the OptionsPanel - #43
ModalState
- #69
- LoadingIndicator stopping before page fully loaded - #68
- Error Fallback reset sends to
/
- #64 - Updated Cypress to
v4.12.1
- #65 - Directly access
/signup/
,/login/
, and/jobs/:id
pages from a hard url - #30
- Fixed
currentPage
not being reset in betweenjobs
andsavedJobs
- #59
- Details Side Link icons styling
- Moved away from bare
CSS
and implementstyled-components
instead - #39 - Jobs are now stored on the database - #40
- Notifications now use
react-toastify
- #36 - Searches where possible, will use the database instead of the GitHub Jobs API - #48
- The
Details
page now makes a request to the BE for job details - #51 - Going to the old domain should now route you to the new domain - #46
savedJobs
is now an array ofid
's instead of an array of the entireJob
object - #55
- Ability to return to Profile Display from viewing your saved jobs - #56
handshake.jpg
not being requested correctly
- Ability to create a new profile
- Ability to login
- Ability to reset your password
- Ability to edit profile information
- Ability to save your favorite jobs to your profile
<Navigation />
componentLogin
pageSignup
pageSavedJobs
page<Button />
component- Additional Cypress Testing
- Path for
Details
page is now/jobs/:id
instead of/:id
<Input />
now has optionalautoComplete
andtype
propsJobCard
style is slightly different in regards to information displayed in columns vs. rows- Website is now hosted on www.githubjobs.io
prettier
eslint
- Stubs for
optionsPanel.spec.js
- Stubs for
search.spec.js
- Test for
<Details />
<LoadingIndicator />
color better reflects theme- The
<Header />
is now clickable, and will send you to the Search page <JobCard />
won't display alert if image is missing
- ESLint Errors
- Text in "How To Apply" section spilling over the container if a long url was present
- Clicking "Full Time" actually does filter by "Full Time" positions now. GitHub Jobs API for
full_time
does not work.
- JobCard class names to follow BEM better
- README
gridjs-react
- Location Search border radius are now even
- Copyright not having a space
- Align Company info in JobCard correctly
Details
not scrolling to top automaticallyDetails
will not scroll horizontally anymore
- OptionsPanel tests
- Note if no results appear
- If "How To Apply" is a single link, display a styled link
- Page title
- Page description
- Favicon
- If
company_url
exists, company title onDetails
page is rendered as a link searchValue
,fullTime
are retained inApplicationState
<SearchInput />
contains aform
, and can be submitted withenter
key
- Additional tests
<Pagination />
out of alignment<Pagination />
not re-rendering whentotalPages
changedSearch
not using correct URL
- Call to
/jobs
on the Backend - Call to
/jobs/search
on the Backend
- API logic on the FE to be on the BE
- API logic on the FE
- constants file
- github.ts file
<Pagination />
component- Cypress testing
- 5 jobs per "page"
jobs
gets set after setting thecurrentPage
andtotalPages
- Details uses
jobs
to find job instead of hitting GitHub API again - Use
dangerouslySetInnerHTML()
in favor ofreact-markdown
react-markdown
- Incorporated LocationSearch into Redux
- Search is now through a thunk, hitting the GitHub API
- Search functionality within the
<SearchInput />
component local state
<LoadingIndicator />
component
- Loading state of application during initial request
- Redux
- State now moved into Redux and away from Hooks
- Mobilie optimized css for Details page
- Mobilie optimized css for Search page
- Styled
<Details />
component
- Margins on Copyright
<Copyright />
component
<OptionsPanel />
component<Checkbox />
component<Input />
component
<JobCard />
component
- Styled
<SearchInput />
component
searchJobs()
functionality
- Header style
- Header component
- App/Body style
- Ability to return to Search from Details
- React Router
- Job Details Page
- Table rendering of job listing (temporary removal)
- FullTime search
- Location Options
searchJobs()
util.ts
- Inidividual search function for location and description
- Location Search
- Search by keyword
- Grid.
- Default api query includes hard coded "Los Angeles" as location.
- Initial happy path to display length of jobs