#clojurescript
Scratching my itch: A #clojurescript QR-code reencoder. Go to thenybble.de/qr-code/, point your camera at a qr code, download an image to present to other scanners.
Entirely client-side. I know the UI is shitty.
Something that's lacking in the Reagent (and re-frame) model is explicit managing of the state of your data sources.
Say you are fetching something from an API, and then you stick that in an ratom, so your UI renders it. That works for the happy path, but then you realize it might error, and you need to show that to the user, and you might want to show that it's loading. And maybe you want to detect a timeout. So you end up with
:new - ratom created, not fetching yet
:loading - fetch in progress
:result - happy path, we haz data
:error - something went wrong
:timeout - we stopped waiting
Say you have a reaction that computes some value based on the result from two API requests. That reaction shouldn't compute until both have valid results. And so that reaction itself has a state, which is the composite of its upstream states.
And in any component you should be able to provide these five states explicitly (if you want to) - here's what to render while data is loading, here's how to show errors, etc.
We're experimenting with ways to handle this systematically in a way that composes.
I made a #static site using #ShadowCLJS #ClojureScript . The last step was to remove the #CLJS. But I still use Shadow to start up a local server and explore my static site in-browser. It works nicely as a quick server. #clojure
Oof I just found out that Tauri dropped support for the ClojureScript template ;_;
#tauri #clojurescript
@howard I have been looking at this and thinking about it! First, I am not sure I'm enough of a #ClojureScript expert to really have a worthwhile opinion yet. But I think the nice thing about cljs is that it's nearly #Clojure, so skills transfer over.
I also really appreciate how CLJS maintains the "try to be FP" approach of Clojure. I don't have to think like a JavaScript programmer when I am using it---at least not all the time.
Hey @pymander ... would be interested in hearing your perspective in comparing #clojurescript and #junolang.
TIL that #Clojurescript is literally the same as #Clojure: it is just transpiled to Javascript instead of Java. Previously, I thought it was a Clojure clone for JS
IPRally (https://www.iprally.com/), a company I'm working for is looking for #Clojure and #ClojureScript developers. It's a great place with amazing people.
It is super tricky to review #css code! Do you feel the same?
Reviewing #clojurescript, #clojure, or #javascript, or any other programming language is much easier because you can understand and reason about the code by just reading it.
But reasoning about CSS code without running it and playing with it in the browser's Console? Impossible.
It turns out that using var-quoting with reagent (React) components isn't such a good idea.
Var-quoting makes the component function not `identical?` to itself, which causes unnecessary remounts.
(defn foo-component [,,,])
(identical? foo-component foo-component) #=> true
(identical? #'foo-component #'foo-component) #=> false (<-- react will remount)
I've been playing around with #ClojureScript and figuring out how to load it into a #WordPress plugin.
I'm having a problem trying to install GraalVM on my NixOS that already has OpenJDK.
The core of the problem is a collision between graalvm/bin/jhsdb and openjdk/bin/jhsdb.
Does anyone knows how to solve collisions in NixOS?
I'm using home manager version 23.05-pre.
#nixos #nix #linux #graal #graalvm #clojure #jdk #java #openjdk #clojurescript #homemanager #dev #developer #help #tech
I wanted to try out a #JavaScript library library via NPM in my #Clojure frontend (well, #ClojureScript technically).
Adding this single dependency literally adds 1000+ lines of additional generated shit to my package-lock.json!
Ek is 'n groot aanhanger van babashka om projekte mee aan te pak. Teen die einde van laasweek het ek weer na 'n AWS SAM (Serverless) projek gekyk wat op ys is, en toe probeer ek nbb in die projek gebruik. 'n Paar keer se kop krap en stoei met konsepte, maar ek is nou heel gelukkig hoe dinge uitdraai. Ek gaan waarskynlik al die Vanilla JavaScript dele vervang met ClojureScript!
#AWS #SAM #Serverless #babashka #nbb #ClojureScript
Ek het hier begin: https://github.com/babashka/nbb/blob/main/doc/aws_lambda.md
Just tried out #UIx (https://github.com/pitch-io/uix). Thinking about using it instead of #Reagent for my next hobby project.
#Clojure #Clojurescript #React #WebDev #Frontend #dev #developer #development
@ebassi do you say #JavaScript? :) Do I hear #ClojureScript? :D
OK, letโs try an #introduction
1) I am interested in #language #learning (see tutorials at https://langintro.com)
2) I like #traveling (https://langintro.com/tripreports/)
3) Iโm a #cat person (see the not-updated-in-ages https://catcode.com/catblog.html)
4) Wrote an introduction to #ClojureScript (https://langintro.com/cljsbook/)
5) Enjoy riding my bicycle for exercise.
๐ A case for ClojureScript 2.0 | @nikitonsky
#Lisp
#Clojure
#ClojureScript https://tonsky.me/blog/clojurescript-2/
I put the latest blog entry by @nikitonsky on /r/clojure yesterday: "A case for ClojureScript 2.0".
The Right Honourable creator of shadow-cljs, Thomas Heller, chimed in with a rebuttal which could easily be its own blog post: https://www.reddit.com/r/Clojure/comments/14jfs48/a_case_for_clojurescript_20/jplxjm3/
New post: wrote about how to setup simple continuous deployment for a #ClojureScript frontend application using #Github Actions and #Glitch
Watched this amazing talk about Node.js Babashka (#nbb) by @borkdude last night and I am totally hyped already even though I'm still learning the foundations of #clojure / #clojurescript .
The output and energy of @borkdude is unreal. ๐คฏ ๐
Things like this also give newcomers like me confidence in an active community.
@some
This is super nice!
I'm just starting out learning #clojurescript but this is extremely motivating to see.
Thanks for the work you put into that project. ๐
The https://p5cljs-editor.github.io/ now has a console huhu
#js #p5js #javascript #cljs #clojurescript #webdev #webapp #opensource #indie #indiedev
You can now add CDN links to your p5cljs sketches ๐ฅณ https://p5cljs-editor.github.io/
#p5 #p5js #js #webeditor #editor #webapp #webdev #cljs #clojurescript
@amcooper If you're already using a JVM-based language, I'd suggest #Clojure (it's what I've been using in production for the past dozen years). If you're already using JS, look at #ClojureScript
Sketches are encoded in the URL, so you can easily share them:
The p5.cljs editor is live! It's a really barebones editor, but you can now try writing P5 in ClojureScript! Link: https://p5cljs-editor.onrender.com/
Not affilliated with P5 or the Processing foundation.
#p5 #processing #clojurescript #cljs #p5js #js #creativecoding
Building a web editor for P5 but using ClojureScript!
This is a really ugly proof of concept, but I'm really happy to have learned how to create this.
Portfolio, a "visual REPL" for #clojurescript looks pretty neat! https://github.com/cjohansen/portfolio
I'm gonna try it out. I'm not sure if it's worth the effort to convert our project from devcards to portfolio but it definitely had couple useful features that devcards lacks (like search, render in iframe, and easier to navigate between one scene to another)
@bit101 Ohhh... Great choice, Keith! If I may, here're some of my own #Clojure tutorials/workshop repos & projects:
Longish tutorial:
https://www.creativeapplications.net/tutorials/introduction-to-clojure-part-1/
Most posts in 2015/16:
https://github.com/thi-ng/blog
Various thi.ng projects/libraries:
https://thi.ng/?clojure#tags
Collection of various workshops:
https://github.com/thi-ng/demos/
Resonate workshops:
ECS, WebGL & #ClojureScript
https://github.com/learn-postspectacular/resonate-workshop-2015
Graphs, Text adventure, dataviz
https://github.com/learn-postspectacular/resonate-workshop-2014
Generative music w/ Overtone
https://github.com/learn-postspectacular/resonate-workshop-2013
@pragprog #ClojureScript , of course. What other way is there?
ClojureScript / Npm integration feels like it has come a looong way. Especially with shadow-cljs.
I was able to get a sanity.io client spun up really easily.
https://shadow-cljs.github.io/docs/UsersGuide.html#_using_npm_packages
#Lisp folk: if one were building a sophisticated new web client, would it be better in this day and age to write it in #ClojureScript and compile to JavaScript, or in #Schism and compile to #WebAssembly?
Emmy is an implementation of the scmutils system for math and physics investigations in the #Clojure and #ClojureScript https://github.com/mentat-collective/emmy
#ReleaseSunday Good things come to those who wait... After 10+ years, incl. 4+ years of release candidates and now prompted by a recent PR by @dimovich, earlier today I've released https://thi.ng/geom-clj v1.0.0 proper โ a large, comprehensive #opensource 2D/3D geometry toolkit for both #Clojure & #ClojureScript. It's a massive project with too many features to list here, see readme & attached images for a partial list...
This was the first public project under the thi.ng moniker and from 2011-2016 I worked almost daily on it (though in it's current form it's the 4th rewrite). It also was the first project for which I decided to adapt a #LiterateProgramming process, using Emacs #OrgMode, allowing me to develop and intersperse source code with prose, sections, table of contents, reference/research links, tasks, diagrams, visualizations, tables & parametric code templates. Amazing productivity booster & dearly missed since... I continued using LP for several other large thi.ng libraries (most notably https://thi.ng/fabric), but in 2018 I decided to give up, since it proved to be a major hurdle for 3rd party contributions... ๐ข
In hindsight, the project, design and learnings from Clojure heavily inspired and directly expanded into my later (current!) #TypeScript work and the group of 20 new libraries under the same name (i.e. see https://thi.ng/geom). The latter is _not_ a direct port and currently still has a much stronger focus on 2D, yet again is one of the largest groups of libraries in the entire https://thi.ng/umbrella monorepo...
#genuary2023 Art Deco. In 2013/4 I (over)worked on one of the largest and most exhausting #GenerativeArt projects of my life: Co(de)factory was an interactive installation piece for the Digital Revolutions/DevArt exhibition, commissioned by Google & The Barbican Centre London. The centerpiece was a DIY 3D resin printer used to publicly fabricate objects designed by visitors via a custom WebGL-based visual programming environment (which was pain to get running on Chrome on the Nexus tablets embedded in the plinths). This design tool (written in back then still pre-mature #ClojureScript) was based around my https://thi.ng/morphogen DSL which defines 8 basic tree operators (e.g. reflection, subdivision, skewing, tapering etc.) to generate complex geometries via recursive transformations of a single arbitrary seed box. Not going to talk much more about the project here (maybe another time), other than to say the large 3D printed canopy structure/sculpture (3 meters tall, 2.4m diameter) surrounding the printer, as well as the cladding for the plinths were all created from hundreds of small modules designed with the Morphogen DSL and used the "golden era" of 1920s American Art Deco as main inspiration... You can find the entire source code for all components (incl. the design tool, server backend, fabrication files etc.) on GitHub:
#introduction time.
#freelancer gone #corporate, #fullstack developer working at #github, I programmed for a living in #php #csharp #java #javascript #clojure #clojurescript #typescript #python #ruby #rust.
Failed once starting a company, hope to try succeeding once again.
I love watching #sports, especially #formula1
Happy owner of 2 fox terrier #dogs
@nosherwan As a functional programmer, it's React, sans JSX, and it's not even close. I'm not going to leave my beautiful, trustable, pure functions. At this point you can use React to build anything and everything, even native desktop apps, and you can do it with #ClojureScript too.
Hello, I am Chandrasekar. I am a #frontend developer working #remote for a company in #Chennai. I now live in #Malaysia with my wife. I am interested in talking about #films #books #boardgames and the #web.
Dropping some hashtags for a few other interests that I would like to follow here - #clojure #clojurescript #javascript #indieweb #design #UX #sciencefiction #linux
The Twitter Webdev community is largely preoccupied with single-line promotional texts (largely about the glories of #javascript) and threads of gee-whiz info that I actually find quite useful sometimes. So, in proper #Clojure fashion, I've decided to use that community as Host and do all those same things, but Clojure[Script]. Feel free to join me! #ClojureScript #webdev