Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Starlog.Net

A .NET 9 ASP.NET Core Razor Pages implementation of the Astro Starlog template. This project serves as a changelog/release notes documentation system that processes Markdown files with YAML front matter to display software releases in a blog-like format.

Starlog.Net

Features

  • 📝 Markdown-based release documentation with YAML front matter
  • 🎨 SCSS compilation with automatic CSS generation
  • 📱 Responsive design
  • 🔍 SEO-optimized with Open Graph and Twitter Card support
  • 🚀 Fast rendering with ASP.NET Core performance
  • 📁 File-based content management (no database required)

Prerequisites

Quick Start

  1. Clone the repository

    git clone https://github.com/jakeashcraft/starlog-net.git
    cd Starlog.Net
  2. Restore dependencies

    dotnet restore
  3. Run the application

    dotnet run
  4. Open your browser

Development

Watch Mode

For development with automatic recompilation on file changes:

dotnet watch run

Build

dotnet build

Production Build

dotnet publish -c Release

Project Structure

src/
├── Components/         # Razor view components
├── Core/               # Core constants and utilities
├── Models/             # Data models and DTOs
├── Pages/              # Razor Pages
│   ├── Index.cshtml    # Homepage (release list)
│   ├── Releases.cshtml # Individual release pages
│   └── Shared/         # Shared layouts and components
├── Services/           # Business logic services
├── wwwroot/            # Static files
│   ├── assets/         # Images and media
│   ├── css/            # Compiled CSS
│   ├── releases/       # Markdown release files
│   └── styles/         # SCSS source files
└── Program.cs          # Application entry point

Content Management

Adding a New Release

  1. Create a new Markdown file in src/wwwroot/releases/ (e.g., 2_1.md)

  2. Add YAML front matter at the top:

    ---
    title: 'Release 2.1 - Amazing Features'
    date: '2025-08-18'
    versionNumber: '2.1.0'
    releaseName: '2_1'
    description: 'Brief description of this release'
    image:
      src: '../assets/your-image.jpg'
      alt: 'Alt text for the image'
    ---
  3. Write your release content in Markdown below the front matter:

    ## What's New in 2.1
    
    ### 🚀 New Features
    - Feature one
    - Feature two
    
    ### 🐛 Bug Fixes
    - Fixed issue A
    - Resolved problem B

YAML Front Matter Fields

  • title: Display title for the release
  • date: Release date in YYYY-MM-DD format
  • versionNumber: Semantic version number
  • releaseName: URL-friendly slug (should match filename without .md)
  • description: Brief description for SEO and previews
  • image.src: Path to release image (relative to wwwroot)
  • image.alt: Alt text for accessibility

Styling

SCSS files are located in src/wwwroot/styles/:

  • global.scss - Main stylesheet
  • colors.scss - Color variables
  • layout.scss - Layout utilities
  • type.scss - Typography styles

SCSS is automatically compiled to CSS during development and build.

Technology Stack

Configuration

Application Settings

Key configuration options in appsettings.json:

  • Logging levels
  • Environment-specific settings
  • Static file configuration

Launch Settings

Development server configuration in Properties/launchSettings.json:

  • HTTP/HTTPS ports
  • Environment variables
  • Browser launch options

Deployment

Local Production Build

dotnet publish -c Release -o ./publish
cd publish
dotnet Starlog.Net.dll

Docker (if Docker support is added)

docker build -t starlog-net .
docker run -p 8080:8080 starlog-net

Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is a .NET port of the Astro Starlog template. Please refer to the original template's licensing terms.

Acknowledgments

Support

For issues, questions, or contributions, please open an issue on the project repository.

About

A .NET 9 ASP.NET Core implementation of Astro's Starlog template - a changelog/release notes documentation system

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages