Fast Task Timecards is your go-to for hassle-free time tracking, making work hours management a breeze. Ideal for any company that wants to log hours effortlessly from wherever, it's the ultimate tool for payroll folks.
Installation
Tech Stack
How its made
Technologies
Lessons Learned
Minor improvements
Major improvements
Clone to local machine
git clone https://github.com/The-hyphen-user/timecard.git
Install node dependencies for the client
cd client
npm install
Install node dependencies for the server
cd backend
npm install
Create a .env file using the example.env file as a template in the root directory
MONGODB_CONNECTION_URL = ''
SESSION_SECRET_KEY = ''
Start the front end
cd client
npm run start
start the backend
cd backend
npm run start
The express server uses a remote mongoDB database to hold users admins timecards jobsites and information needed for account creation and account recovery. The express server checks for auth, creates updates and deletes request data as needed. The react frontend displays, creates, and searches for jobsites, timecards. The redux statemanagment keeps track of different sets of jobsites and timecards for easyer understanding and look ups.
I delved into the world of code quality by integrating ESLint into my workflow. Utilize ESLint strengthened my understanding of coding standards and provided a powerful mechanism for identifying and rectifying potential issues early in the development process.
I acquired valuable insights into optimizing the structure of my Redux code. The challenge of efficiently loading and updating many sets of data of the same type prompted me to rethink and refine my approach to state management.
Photos could be included for each jobsite, either routed through the server and held on an image hosting or images could be stored on the server host (require server memory to be dynamic resizing)
The back end could be transformed into a set of serverless functions for more module deployment. The front end could transformed into a server side rendering app to allow better web crawlers/SEO