Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/adjkant/sql-sourcery
An ORM for mapping Racket structures to a permanent SQL database
https://github.com/adjkant/sql-sourcery
Last synced: about 1 month ago
JSON representation
An ORM for mapping Racket structures to a permanent SQL database
- Host: GitHub
- URL: https://github.com/adjkant/sql-sourcery
- Owner: adjkant
- License: mit
- Created: 2018-02-28T17:45:56.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2023-03-11T15:07:51.000Z (almost 2 years ago)
- Last Synced: 2024-11-13T00:43:32.497Z (2 months ago)
- Language: Racket
- Homepage:
- Size: 267 KB
- Stars: 5
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-racket-and-scheme - sql-sourcery
README
# SQLSourcery
### Overview
SQLSourcery is an ORM for mapping structures in Racket to database entries in a SQL database. Structure definitions map to tables and instances of each structure definition map to a row in the respective table. Changes are propagated through functional constructs in Racket.### Current Status
SQLSourcery is still in a prototype state under active development in conjunction with [WebSourcery](https://github.com/adjkant/web-sourcery). Currently the basic structure mapping is complete along with basic tools for working with SQLSourcery structures. The language also includes testing tooling.
### Roadmap
##### Upcoming Features
- [ ] unmapped structures + tooling support (unmap, map, mapped?)
- [ ] Allowing atomic user-defined types
- [ ] Structures within structures support
- [ ] List Support
- [ ] Cache layer for references to avoid disc reads / SQL execution
- [ ] SQL error handling support##### Programmer Tooling
- [ ] Create if exists structure create option
- [ ] easy sourcery-struct equality check
- [ ] Edit sourcery-load to include filtering during loading
- [ ] reference-equal?##### Code improvement
- [ ] Breaking up monolithic constructs using previously unused racket tooling
- [ ] Better use of the db and sql libraries