Hanjin Kim

[Project] KitePad - Paste model, lifecycle, and privacy features

Today I focused on defining the core paste model and lifecycle. I implemented view limits and end‑to‑end encryption for pastes, plus a reading‑time estimation feature in the editor to give authors feedback on content length. I then added burn‑on‑read functionality, password‑based deletion, and line numbers for code blocks to better support sensitive, code‑heavy pastes.

For the blog/listing experience, I introduced pagination, refined UI styling (including removing border‑radius and updating button appearances), and added contact and English privacy policy pages with updated editor UI styles. I created a dedicated privacy policy page and linked it from the footers of index.html and view.phtml to make policies easily discoverable.

Security and usability were improved by implementing password protection for pastes, switching the editor to a textarea, and rendering markdown on the view side. After publishing, the app now displays a shareable link with a copy button, and I updated the main font and terminology from “post” to “paste” for a clearer product identity. I also implemented paste expiration and exposure options with corresponding UI, database schema changes, and filtering logic, plus single‑ID viewing with share/copy actions, navigation links, and a refined post entry layout.

#coding #kitepad