···11+BSD Zero Clause License
22+33+Copyright (c) 2025 Grace Kind
44+55+Permission to use, copy, modify, and/or distribute this software for any
66+purpose with or without fee is hereby granted.
77+88+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
99+REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
1010+AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
1111+INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
1212+LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
1313+OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
1414+PERFORMANCE OF THIS SOFTWARE.
+27-6
README.md
···11# Impro
2233-Icons from https://github.com/halfmage/majesticons (MIT Licensed)
33+Impro is a Bluesky client written in HTML, CSS, and JavaScript. It is dependency-light by design and intended to serve as a demo for implementing common Bluesky client features in vanilla JS.
44+55+You can try it out here: https://impro.social
66+77+## Dependencies
88+99+Impro uses the following libraries:
1010+1111+- [lit-html](https://www.npmjs.com/package/lit-html) for declarative rendering
1212+- [Capacitor](https://capacitorjs.com/) for native builds
1313+- [HLS.js](https://github.com/video-dev/hls.js/) for streaming video
1414+- [emoji-picker-element](https://github.com/nolanlawson/emoji-picker-element) for emoji picker UI
1515+1616+The icons are from the [Majesticons](https://github.com/halfmage/majesticons) free icon set.
1717+1818+## Development
1919+2020+Impro is a single-page app built with [Eleventy](https://www.11ty.dev/). To run the development server, run:
42155-Dependencies:
2222+```bash
2323+npm run start
2424+```
62577-- capacitor
88-- lit-html
99-- emoji-picker-element
1010-- HLS
2626+External libraries are included as standalone files in `lib`. In cases where bundling is needed, the libraries are bundled with [esbuild](https://esbuild.github.io/). Changes to these bundles should be rare, but can be triggered manually with the following commands:
2727+2828+```bash
2929+npm run bundle:capacitor
3030+npm run bundle:lit-html
3131+```