Skip to content

Latest commit

 

History

History
72 lines (72 loc) · 6.58 KB

hours.md

File metadata and controls

72 lines (72 loc) · 6.58 KB
Date Hours Description
18.2. 4 Set up project structure and backend, uploaded database, connected to it
19.2. 4 Set up frontend, connected to backend, put some CSS. Made a simple vocabulary practice mode, where you get a random word.
21.2. 2 Made first version of conjugations practice mode and optimized backend
22.2. 1 Worked on frontend forms and CSS
26.2. 3 Worked on frontend, field selection and checking correct answers on enter
9.3. 1 Worked on login functionality
10.3. 2 Login functionality again
11.3. 3 Login middlewares finished, minor frontend fixes
12.3. 2 Login page to frontend started
14.3. 3 Added redux to handle user on frontend
17.3. 1 Added logout
 18.3.  3  Tweaked user experience: conjugate form fields switching on enter/tab, notifications
23.3. 1 Building user page to frontend, and service for getting/creating wordlists
25.3. 1 Continued wordlist page and service
27.3. 3 Continued wordlist on frontend, and worked on backend handling of wordlists
 30.3. 2 More backend handling of wordlists, tense & mood types added, authorization put to use
 31.3. 4 Improved logic of login on frontend, listing wordlists of user works with links to page of individual wordlist. Wordlist editing not yet done.
1.4. 3 Started to build functionality of adding words to wordlist. Added react-select to frontend, and route to backend. Still requires some work
3.4. 2 Added functionality to delete words from wordlists, both frontend and backend
4.4. 3 Refactored user-routes logic into user service & added data validation, made registration possible in frontend
6.4. 4 Backend work: Refactored logic from wordlist-routes to service, added validation. Improved error handling, wrote errorHandler-middleware and added usage of express-async-errors to avoid try-catch clutter
8.4. 3 More backend refactoring: Refactored some logic from words-routes to a service, and changed randomization to happen at database.
9.4. 4 Added settings to conjugation, allowing to choose tenses and moods to include. This is a raw version that is not fully functional yet. Also other front refactorings.
10.4. 2 Added conjugation to limit words to chosen wordlist only. Added a flashcard page.
14.4. 2 Worked on single word mode of conjugation, and refactored frontend in the process
15.5. 4 Continued on single word mode, added flag icons, added wordlist deletion to front and backend, refactored backend routes to not need user-assertion
16.4. 3 Improved backend error handling, started moving notifications into redux. Goal is to have it centralized in Redux and to prevent new notifications being deleted too soon because of older ones
17.4. 1 Continued on working with moving notification into redux, but it seems very difficult
18.4. 1 Finally got notification working with Redux Toolkits createAsyncThunk
20.4. 3 Added logic to prevent choosing combinations of mood and tense that are impossible. Also dealt with situations where some forms are empty, like 1st and 2nd person singular in imperative
21.4. 2 Started building backend functionality for setting daily goal
22.4. 3 Functionality for counting how many words are done, and showing progress towards daily goal. Added password changing
23.4. 4 Added redux-toolkit middleware that saves user-state after every change. Also worked on code quality and error handling on frontend
24.4. 3 Refactored frontend error handling by moving all try-catch from React-components to service-files. Not sure how wise this is but it seems clearer. Also tested and fixed other bugs
27.4. 1 Added showing correct answers to full conjugating mode. Minor fixes & Readme update
28.4. 2 Showing on how many days app has been used by user and how many unique mood/tense combinations have been conjugated
29.4. 3 Added information table of how much each tense and mood has been practiced. Added setting of strict mode for accents, which defines if accent mistakes are allowed. Fixed logic of tense/mood randoming that allowed some impossible cases. Fixed new user not logging in.
30.4. 4.5 (To new branch: cssBranch) Studied, installed & configured Tailwind CSS. Started re-building frontend UI with it.
1.5. 3.5 Continued building frontend styles.
2.5.  1 Started building a modal component with Tailwind CSS
4.5.  4 Built a working version of modal. Fixes and improvements in styles.
5.5. 3.5 Continued building frontend UI & styles, fixed some small issues in both frontend & backends.
6.5. 3.5 Added changing password functionality into a modal. Made practice settings save & load into localstorage. Fixed small issues.
20.6. 4 Fixed problems on wordlist page, merged cssBranch to main branch, started writing cypress tests
23.6. 3 Continued writing cypress e2e tests
24.6. 4 Set up test database in docker image, started writing backend unit tests with jest
25.6. 5 Set up CI with Github Actions, started api tests with supertest
27.6. 2 Writing cypress tests
29.6. 4 More e2e tests. Setup AWS lightsail server for deployment of the project.
30.6.  4 Setting up CD pipeline
4.7. 3 CI/CD
6.7. 3 Added verb search page, fixed UX issues
9.7. 2 Added individual verb conjugation table page, code quality fixes
11.7. 1 Fixed flag icons not working on windows, code quality
12.7. 2 Changed UI styles
14.7. 1 Refactoring into smaller components
15.7. 4 Fixed login related bugs, error handling, broken tests
16.7. 3 Code quality: toast API created, unified quotes
18.7. 1 Added printing of correct answers to console, deployed new version
 23.7.  2  Built a new, better version of layout
 29.7.  3  Fixed wordlist bug and improved new layout
30.7.  3 Style & layout fixes, flashcard bugfix, responsive layout on smaller screen
31.7.  2 Fixed broken tests, styles
1.8.  1 Small fixes
 3.8.  2 Code quality improvements, fixes
 7.8.  3  Fixes to UX, refactorings, improvements
14.8.  2  Error handling moved completely to axios interceptor
14.9. 2 Refactoring code to share common logic
11.11. 2 Continuous deployment through github added
Total hours 181