Skip to content

Commit

Permalink
README: added PicoCSS and Playwright links
Browse files Browse the repository at this point in the history
  • Loading branch information
nickosh committed Aug 27, 2024
1 parent 9b189ea commit 1ccfaf2
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,9 @@ Automate check-in/check-out for Zoho People with a modern, self-hosted web appli

Simple but powerful and flexible web application that handles only two tasks: check-in to Zoho People and check-out from Zoho People. Task scheduler allows you to plan check-in/check-out tasks for the whole week. Random range for tasks start supported to not let your boss know that some sort of automation is in use. Modern web application powered frontend part to let schedule and remove tasks as easy as possible. Experimental password protection has been implemented for long-term self-hosted use. Plan your working day, start your work easily and never forget to check out again! :wink:

This application grew out of an idea for a simple script to help me remember to check in/out of Zoho People at my current company. I really don't like micro-controlling, especially when it's pretty pointless, and I like to automate things. So, one evening it was decided - a simple script for presence control. I will use Playwright to automate the browser part, which I already know well enough. I'll use [APScheduler](https://github.com/agronholm/apscheduler) as scheduler package - it's stable, flexible and has support for task storage from box. I also found the [FastHX](https://github.com/volfpeter/fasthx) project, which should help me to build HTMX-API pretty quickly. Future spoilers: FastHX was ok and gives me a good start, but I found that raw [FastAPI](https://github.com/fastapi/fastapi)+[Jinja2](https://github.com/pallets/jinja/) is more flexible for my tasks. Docker here, JS libs there and my workday helper is ready!
This application grew out of an idea for a simple script to help me remember to check in/out of Zoho People at my current company. I really don't like micro-controlling, especially when it's pretty pointless, and I like to automate things. So, one evening it was decided - a simple script for presence control. I will use [Playwright](https://github.com/microsoft/playwright) to automate the browser part, which I already know well enough. I'll use [APScheduler](https://github.com/agronholm/apscheduler) as scheduler package - it's stable, flexible and has support for task storage from box. I also found the [FastHX](https://github.com/volfpeter/fasthx) project, which should help me to build HTMX-API pretty quickly. Future spoilers: FastHX was ok and gives me a good start, but I found that raw [FastAPI](https://github.com/fastapi/fastapi)+[Jinja2](https://github.com/pallets/jinja/) is more flexible for my tasks. Docker here, JS libs there and my workday helper is ready!

This project is in many ways a showcase and experimental playground for me. I really like Python and automating things. My constant pain is the lack of good UI support from Python itself. [HTMX](https://github.com/bigskysoftware/htmx) is all the rage these days, so I decided to take a look. As a result, I am using HTMX a lot in this project and I like it so far! I hope to use this project template and ideas in future projects. To build the frontend, I used HTMX for backend communication, PicoCSS as a micro-CSS framework to build layout quickly, [Notyf](https://github.com/caroso1222/notyf) JS library to handle notifications, [just-validate](https://github.com/horprogs/Just-validate) to validate forms before submitting ('login' and 'new task' forms). I also experimented with LLM code generation while building this project - I found that LLM is pretty good at generating code from scratch, but not so good and messy when editing existing code or when you need to change the implementation. Still, the AI helps me a lot to quickly build password protection for the app, as well as JS and HTMX elements for templates. I had a lot of fun building this project and I hope you have a lot of fun using it or taking elements from these projects to build something new. Have fun and take care!
This project is in many ways a showcase and experimental playground for me. I really like Python and automating things. My constant pain is the lack of good UI support from Python itself. [HTMX](https://github.com/bigskysoftware/htmx) is all the rage these days, so I decided to take a look. As a result, I am using HTMX a lot in this project and I like it so far! I hope to use this project template and ideas in future projects. To build the frontend, I used HTMX for backend communication, [PicoCSS](https://github.com/picocss/pico) as a micro-CSS framework to build layout quickly, [Notyf](https://github.com/caroso1222/notyf) JS library to handle notifications, [just-validate](https://github.com/horprogs/Just-validate) to validate forms before submitting ('login' and 'new task' forms). I also experimented with LLM code generation while building this project - I found that LLM is pretty good at generating code from scratch, but not so good and messy when editing existing code or when you need to change the implementation. Still, the AI helps me a lot to quickly build password protection for the app, as well as JS and HTMX elements for templates. I had a lot of fun building this project and I hope you have a lot of fun using it or taking elements from these projects to build something new. Have fun and take care!

<!-- Setup and run -->
:gear: Setup and run
Expand Down

0 comments on commit 1ccfaf2

Please sign in to comment.