https://github.com/bryanwilhite/songhay.publications
Core reusable definitions for Songhay Studio Publications
https://github.com/bryanwilhite/songhay.publications
cloneextensions csharp eleventy epub-generation markdig markdown songhaycore
Last synced: about 1 month ago
JSON representation
Core reusable definitions for Songhay Studio Publications
- Host: GitHub
- URL: https://github.com/bryanwilhite/songhay.publications
- Owner: BryanWilhite
- License: mit
- Created: 2019-11-20T17:27:31.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2025-02-03T04:51:56.000Z (4 months ago)
- Last Synced: 2025-04-13T02:09:14.803Z (about 2 months ago)
- Topics: cloneextensions, csharp, eleventy, epub-generation, markdig, markdown, songhaycore
- Language: C#
- Size: 8.53 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# `Songhay.Publications`
**NuGet package 📦:** [`Songhay.Publications`](https://www.nuget.org/packages/Songhay.Publications/)
**Documentation 📚:** [`Songhay.Publications` API](https://bryanwilhite.github.io/Songhay.Publications/)
## core reusable definitions for Songhay Studio Publications
Selected Songhay Studio Publications are based on automation ‘pipelines’ for static HTML and EPUB. The fundamental document format of these pipelines is markdown. It follows that the `MarkdownEntry` [class](./Songhay.Publications/Models/MarkdownEntry.cs) is a core definition of this studio.
Architecturally, the `MarkdownEntryExtensions` [class](./Songhay.Publications/Extensions/MarkdownEntryExtensions.cs) augment the `MarkdownEntry` to define [eleventy](https://www.11ty.io/)-flavored methods for generating a draft and publishing.
## `GenericWeb` models and extensions
This repo also contains the historical class definitions for a Studio project called `GenericWeb`. This was a turn-of-century, static-file generation solution using SQL-Server-based XML as a fundamental document format.
The SQL Server _schema_ for `GenericWeb` features:
- the `Segment` [[class](./Songhay.Publications/Models/Segment.cs)]
- the `Document` [[class](./Songhay.Publications/Models/Document.cs)]
- the `Fragment` [[class](./Songhay.Publications/Models/Fragment.cs)]These class definitions are still useful (without much SQL Server or Entity Framework). In fact, the Front Matter of `MarkdownEntry` is based on the GenericWeb Document.
## `Songhay.Publications.DataAccess`
**NuGet package 📦:** [`Songhay.Publications.DataAccess`](https://www.nuget.org/packages/Songhay.Publications.DataAccess/)
`Songhay.Publications.DataAccess` adds SQLite-based Entity Framework data access for Songhay Studio Publications. This represents a renewed commitment to [SQLite](https://www.sqlite.org/index.html) in this Studio.
`Songhay.Publications.DataAccess` is stating with the `PublicationsDbContext` [class](./Songhay.Publications.DataAccess/PublicationsDbContext.cs).
## Studio packages dependent on `Songhay.Publications`
```mermaid
graph BT
pubs[`Songhay.Publications`]pubs-->1[`Songhay.Publications.DataAccess`]
pubs-->1[`Songhay.Player`]
pubs-->2[`Songhay.Publications.Analytics`]
pubs-->3[`Songhay.Publications.KinteSpace`]
```@[BryanWilhite](https://twitter.com/BryanWilhite)