Skip to content

enjinil/attnd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Attnd

Basic realtime attendance monitoring built with React and Phoenix.

attnd-admin attnd-user





Features

  • User can start and end a session to track their work hours
  • Admin can track user attendance sessions in realtime
  • Admin and user can view monthly total work hours summary
  • Admin can manage users

Setup development environment

  • Install postgreSQL
  • git clone https://github.com/enjinil/attnd.git
  • Create frontend/.env and paste frontend/.env.sample content
  • Setup api
cd api && mix ecto.create && mix ecto.migrate
  • Setup frontend
cd frontend && npm install
  • Seed example data (optional)
cd api
ADMIN_PASSWORD="anypassword123456" mix run priv/repo/seeds.exs
  • Start the app
cd api && mix phx.server
cd frontend && npm run dev

Running end-to-end tests

  • Setup development environment
  • Start the api
cd api && mix phx.server
  • Start the frontend client
cd frontend && npm run dev
  • Run e2e tests
cd frontend && npm run e2e

What's missing?

The following are things that are necessary but not covered yet

Accessibility

The components have not yet implemented ARIA attributes for accessibility purposes.

Unit/integration tests

Currently, the application relies solely on end-to-end tests to verify API and frontend functionality. However, many scenarios remain untested. Component integration tests can serve as an alternative for testing edge cases that are too expensive to validate through e2e testing. Unit tests would help verify that each component functions correctly and facilitate easier problem identification.

License

MIT

About

basic realtime attendance tracking

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published