{"id":26601334,"url":"https://github.com/philippmdoerner/nimstoryfont","last_synced_at":"2025-04-09T16:34:09.726Z","repository":{"id":37435266,"uuid":"444155063","full_name":"PhilippMDoerner/NimStoryFont","owner":"PhilippMDoerner","description":"A REST API Backend reimplementation from Django using an sqlite database. The frontend is https://github.com/PhilippMDoerner/nimstoryfont-gui","archived":false,"fork":false,"pushed_at":"2025-04-05T09:18:40.000Z","size":5237,"stargazers_count":19,"open_issues_count":8,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-05T10:23:45.128Z","etag":null,"topics":["orm","prologue-framework","rest","sqlite"],"latest_commit_sha":null,"homepage":"","language":"Nim","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PhilippMDoerner.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-01-03T18:04:39.000Z","updated_at":"2025-04-05T09:18:43.000Z","dependencies_parsed_at":"2024-04-07T14:38:45.216Z","dependency_job_id":"247a7f8e-0e1b-4f84-bf97-47d033104290","html_url":"https://github.com/PhilippMDoerner/NimStoryFont","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PhilippMDoerner%2FNimStoryFont","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PhilippMDoerner%2FNimStoryFont/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PhilippMDoerner%2FNimStoryFont/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PhilippMDoerner%2FNimStoryFont/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PhilippMDoerner","download_url":"https://codeload.github.com/PhilippMDoerner/NimStoryFont/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248067765,"owners_count":21042351,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["orm","prologue-framework","rest","sqlite"],"created_at":"2025-03-23T18:39:16.253Z","updated_at":"2025-04-09T16:34:09.706Z","avatar_url":"https://github.com/PhilippMDoerner.png","language":"Nim","funding_links":[],"categories":[],"sub_categories":[],"readme":"# StoryFontBackendNim\n\nA re-implementation of the storyfont backend in nim.\nThis is a REST-API on top of an sqlite database.\n\nThe nim dependencies of this project are:\n\n-   Application Server: prologue - https://github.com/planety/prologue\n-   ORM + connection pooling: norm - https://github.com/moigagoo/norm\n-   (De)Serializing JSON to/from ORM models: jsony - https://github.com/treeform/jsony\n-   Simplifaction of model-object construction: constructor - https://github.com/beef331/constructor\n-   Compressing HTTP Responses: zippy - https://github.com/guzba/zippy\n-   Password Hashing: Nimword - https://github.com/PhilippMDoerner/nimword\n-   Sending emails: smtp - https://github.com/nim-lang/smtp\n\nBeyond that in terms of tooling and software this project uses:\n\n-   Flyway - For database migrations using raw SQL\n-   Docker - For containerization with alpine\n-   Nginx - As reverse proxy HTTP server\n-   Musl - To link the binary against instead of glibc for use with alpine\n-   SQLite - The database\n\n## Feature Scope\n\nNimstoryfont is the backend of a CRUD heavy web application, previously called AldruneWiki.\nIt is a wiki capable of hosting dnd campaigns, capable of highly performant processing of requests and pageloads.\nThe corresponding frontend SPA written in Angular is to be found\nhere: https://github.com/PhilippMDoerner/nimstoryfont-gui\n\nCampaigns can be administered by the campaign's individual admin. They can add and remove members as they desire.\n\nIt allows writing articles for the following parts of a DnD Campaign:\n\n-   Character\n-   Creature\n-   Diaryentries (aka Session notes)\n-   Items of any importance\n-   Locations\n-   Organizations and their members\n-   Quests\n-   Rules\n-   Sessions (When they happened, not what happened in them, that is to be recorded in Diaryentries)\n-   Spells\n-   Quotes\n\nBeyond that notable features include:\n\n-   Displaying (leaflet) maps on which locations can be marked with customizable icons\n-   Upload and stream recordings of your sessions, including timestamping them for later use\n-   Creating data-dumps for individual campaigns to download, enabling offline-browsing of campaign data. This is done via the dataExportJob file\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphilippmdoerner%2Fnimstoryfont","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fphilippmdoerner%2Fnimstoryfont","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphilippmdoerner%2Fnimstoryfont/lists"}