Solarpunk is sometimes thought of as the “good ending” to cyberpunk– there’s technology, but it’s community-focused instead of in the hands of evil conglomerates, and– if the name doesn’t give it away– renewably powered. [Victor Frost] found that image of the future inspiring enough to create this ESP32-hosted community hub. Yes, it looks like a lantern, but it’s actually a very-local webserver.

Local webserver sounds like an oxymoron, but this device does serve a page over HTTP… just, not on the world-wide web. Instead the only way to access it is via its own Wireless Network– he’s using the ‘captive portal’ that forces you to log into public wifi to direct people to a community message board.
It’s unmoderated, and unfiltered– users can post what they like, but given that they have to be within a few meters of the device, it’s not exactly anonymous. It’s a lot like the community center corkboard brought into the 21st centruy, which is very in keeping with the solarpunk ethos.
For ease of updates, he’s subdivided the ESP32’s flash into three partitions: one for the data, and two for the software, using LittleFS. This allows live updates and keeping a known-good backup for the quickest possible turnaround and/or rollback. One interesting thing is that his who UI– the actual web site, HTML, CSS, and JS– is all crammed into a single string in PROGMEM rather than files on the little file system. It’s an interesting choice, and makes for quick updates, firmware and UI in one go. Not everyone will like it, but it works for [Victor]. The code is, of course, on GitHub under the GPL— there’s a lot of overlap between the open source and solarpunk ethos, after all.
It’s a bit of a pity that he missed our Green Powered Challenge, as this project would have fit right in to the PV category, considering it runs on a 6W panel. For all the cyberpunk and solar power you see on this website, you’d think the “solarpunk” tag would be more popular, but no– all we have is this stained-glass robot.
Thanks to [Victor] for the tip! If you missed our contest, too, no worries– we take projects of all colours, green or otherwise, all the time. Just drop us a tip.

Thanks so much for featuring my project! I will just clarify that there is SOME moderation capability: in the admin panel (accessible via “/admin” and a password) there is the ability to view all non-expired postings and to delete them either individually or to wipe the board clean if needed.
Nice project.
Sorry to poke holes, but I just took a quick look at the sketch, and unless I’m mistaken you’re embedding the admin key in the script section of the HTML which means anyone could read the key simply by viewing the page source. I know it’s a very local service, but it does make it very easy for someone to get up to mischief. Better to send the key back to the esp for validation, at least then it’s only visible briefly.
The reason I noticed is because I’d also been playing around with embedding a webpage in progmem not long ago and was curious to see another persons approach to it. I ended up putting all the progmem declarations on a seperate web.h file with a little script to refresh it from any files in another folder. I found it much easier to work on than trying to edit inside the sketch, though it does mean you can’t include variables from the sketch (how I spotted the key problem). Bonus is you can even include binaries like a favicon easily.
I’d be happy to share if there was any interest, it was so small a script I hadn’t considered putting it up.
Thanks for telling me! I’m not a web-dev (as the simplicity of it can probably tell) so I didn’t think of that. I’ll try to figure out how to fix that as you suggested and I’ll update the github. The power of opensource, baby!
Constructive criticism? Including explanation and solution? In this day and age?
Made my day, seriously! (Cheesy, I know. But it’s SO rare these days!)
What an adorable little project.
Well — little as in form factor and its short range. It’s still an impressive project and I adore the idea and execution.
Esp32 and power bank and solar panel could be ultimate “free energy mini server” of the future
Very nice project! Has an “IKEA vibe”, and I mean that in the best possible way :)