nicoviii / typedpersistence Goto Github PK
View Code? Open in Web Editor NEWA library for F# which handles basic persistence stuff in a typesafe way
License: MIT License
A library for F# which handles basic persistence stuff in a typesafe way
License: MIT License
For now the library can only be used by me or anyone who has the nerves to have a look at the source code.
It would be cool if a documentation could be generated automatically and e.g. published on GitHub Pages.
For that I need a tool that is capable of transforming F# comments into HTML and a way to host that docu website. (Have a look at GitHub Pages)
(see NicoVIII/GogApi#3)
I use LiteDB.FSharp which is not yet ready for LiteDB v5.
I personally do not have the skills to implement such a big update, so I wanted to have a look at LiteDB v5 and see if TypedPersistence could use it directly.
I really like the Waypoint template so I should use it here as well.
Atm especially for reading I heavily rely on reflection.
This is a slow approach and not ideal for production use.
My idea was to additionally offer CodeGen functionality, which replaces reflection by generating code without reflection for specific types.
This would be a more performant approach, but I guess something like FAKE would be needed to include the type code and execute F# code to generate the code.
For now CI releases a prerelease as a normal one. This should be fixed.
If an application changes types, which are stored in a db, this would cause errors.
My personal approach would be this:
The problem with this approach is, that (as far as I know) the name of the type corresponds to the used key in the db. If I change the type name, I can now load the old record anymore.
I have to provide a way to go around that somehow...
I switched the backend twice now.
At first I used CouchbaseLite, then I used LiteDB and now I switched to simple json files.
It would be cool to separate the main abstraction (with versioning and stuff) and the backend and then be able to write multiple backends, so that you can use LiteDB OR json OR SQLlite or whatever backend would be suitable.
For now the pipeline creates the Github Release and builds the nuget packages but it doesn't release on nuget. This is manual work.
This should change. Could be another chance for an upstream MR in Waypoint.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.