OpenMemex is an open source, local-first knowledge integration platform (aka "second brain" or "knowledge garden") optimized for automation (including caching and indexing of content) as well as enabling neural network machine learning integrations.
This looks like a pretty neat entry in the ever-growing "second brain apps" arena. Some highlights:
- ... OpenMemex is fully functional as a self-hosted application.
- ... SQLite is the central data storage medium
- ... data is organized automatically by timestamp. Topical/conceptual connections can be automatically linked ...
- ... the focus is on automated persistence, retrieval, and (future work) optimizing compression/consumption of information over UI-heavy notetaking tools.
The author is honest about the status "The implementation is currently at functioning pre-alpha MVP maturity", but it may be something worth watching.
I might take a crack at packaging it for Cloudron.
I was able to help the project get their dockerfile off the ground so that it builds and runs with just docker, but it still has a ways to go. Here are some things I think would need to be improved before it would be suitable for cloudron:
- Reduce image size by copying binary results out of the build stages. This is a bit complex because the project is built with rust/wasm-pack and runs a wasm on the frontend, and uses haskell stack for the backend. I'm not familiar with doing docker optimizations with either of these technologies.
- Change the backend to save all data into a /data volume. This will require some changes in the haskell code.
- Get deps-only build steps working. This would be a nice-to-have for the devs to reduce build times after the first build (which can reach to 40min!), but this one isn't a deal breaker for cloudron. I tried, but it causes some compilation output issues so it was commented out for now.
The author was very nice and quite receptive to changes. If anyone else works on this you may want to just aim at getting them merged upstream.