This commit is contained in:
2023-03-10 08:51:40 -06:00
parent 4ff57c3d76
commit 28a2aa2bb8
31 changed files with 4246 additions and 30 deletions

View File

@@ -0,0 +1 @@
node_modules

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -0,0 +1,12 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Ben Ramey Blog</title>
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="icon" href="/favicon.ico" />
<script defer src="/styles.js"></script>
<link href="/styles.css" rel="stylesheet" />
</head>
<body></body>
</html>

File diff suppressed because one or more lines are too long

View File

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,32 @@
{
"title": "BenRamey.com Blog Theme",
"version": "1.0.0",
"name": "orchardcore.benrameytheme",
"private": true,
"homepage": "https://www.benramey.com",
"author": "Ben Ramey",
"scripts": {
"format": "prettier --write \"**/*.{js,json}\"",
"watch": "webpack --watch",
"start": "webpack serve --open",
"build": "webpack --env production"
},
"devDependencies": {
"css-loader": "^6.7.3",
"eslint": "^8.35.0",
"html-webpack-plugin": "^5.5.0",
"mini-css-extract-plugin": "^2.7.3",
"prettier": "^2.8.4",
"sass": "^1.58.3",
"sass-loader": "^13.2.0",
"style-loader": "^3.3.1",
"webpack": "^5.76.0",
"webpack-cli": "^5.0.1",
"webpack-dev-middleware": "^6.0.1",
"webpack-dev-server": "^4.11.1"
},
"dependencies": {
"bootstrap": "^5.2.3",
"prismjs": "^1.29.0"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 198 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 826 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -0,0 +1,16 @@
$body-bg: #26282d;
$body-color: #ced5e2;
$link-color: lighten($body-color, 50%);
$font-size-base: 1rem;
$h1-font-size: $font-size-base * 2;
$h2-font-size: $font-size-base * 1.75;
$h3-font-size: $font-size-base * 1.5;
$h4-font-size: $font-size-base * 1.25;
$h5-font-size: $font-size-base * 1.15;
$h6-font-size: $font-size-base;
$pre-color: $body-color;
$border-color: lighten($body-bg, 20%);

View File

@@ -0,0 +1,124 @@
@import "bootstrap-variables";
@import "bootstrap/scss/bootstrap";
@import "variables";
@import "prismjs/themes/prism-tomorrow.css";
h1 {
color: lighten($body-color, 35%);
}
h2,
h3,
h4,
h5,
h6 {
color: lighten($body-color, 25%);
}
h1,
h2,
h3 {
a {
color: inherit;
}
}
header {
padding: 10px 0;
margin-top: 20px;
background-color: lighten($body-bg, 10%);
border-width: 1px 0;
border-style: solid;
border-color: $border-color;
img {
@include border-radius(50%);
width: 40px;
height: 40px;
}
small {
vertical-align: middle;
}
}
nav.main {
margin-bottom: 20px;
a {
display: block;
padding: 5px;
margin: 0 10px;
text-transform: lowercase;
}
}
nav.pagination {
a,
span {
display: block;
margin: 0 20px;
}
}
section {
margin: 40px 0;
}
article {
&.post {
img {
display: block;
margin: 5px 0;
}
}
div.post-info {
nav {
display: flex;
justify-content: flex-start;
}
time,
nav a {
display: block;
margin: 10px 20px 10px 0;
}
nav span {
display: block;
margin: 10px 5px;
}
}
}
.remark-highlight {
@include border-radius();
padding: 10px;
border: 1px solid $border-color;
background-color: lighten($body-bg, 5%);
color: lighten($body-color, 5%);
margin: 10px 0;
pre {
margin: 0;
background-color: inherit;
padding: 0;
font-size: 87.5%;
}
}
code {
color: $code-color;
}
blockquote {
display: block;
@include border-radius();
padding: 10px 20px;
background-color: lighten($body-bg, 5%);
color: lighten($body-color, 5%);
p {
margin: 0;
}
}
section.comments {
min-height: 500px;
}

View File

@@ -0,0 +1 @@
$code-color: #f8c555;

View File

@@ -0,0 +1,43 @@
const path = require("path");
const HtmlWebpackPlugin = require("html-webpack-plugin");
const MiniCssExtractPlugin = require("mini-css-extract-plugin");
module.exports = (env) => {
return {
mode: env.production ? "production" : "development",
entry: {
styles: "./src/scss/styles.scss",
},
output: {
filename: "[name].js",
path: path.resolve(__dirname, "dist"),
clean: true,
publicPath: "/",
},
module: {
rules: [
{
test: /.scss$/i,
use: [
MiniCssExtractPlugin.loader,
"css-loader",
"sass-loader",
],
},
],
},
plugins: [
new HtmlWebpackPlugin({
title: "Ben Ramey Blog",
favicon: path.join(__dirname, "src/assets/favicon.ico"),
}),
new MiniCssExtractPlugin(),
],
devtool: "inline-source-map",
devServer: {
static: {
directory: path.join(__dirname, "dist"),
},
},
};
};

View File

@@ -0,0 +1,9 @@
using OrchardCore.DisplayManagement.Manifest;
[assembly: Theme(
Name = "OrchardCore.BenRameyTheme",
Author = "Ben Ramey",
Website = "https://www.benramey.com",
Version = "0.0.1",
Description = "Theme for BenRamey.com blog"
)]

View File

@@ -0,0 +1,43 @@
<Project Sdk="Microsoft.NET.Sdk.Razor">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<AddRazorSupportForMvc>true</AddRazorSupportForMvc>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup>
<ItemGroup>
<EmbeddedResource Include="Assets\package.json" />
<EmbeddedResource Include="Assets\src\assets\favicon.ico" />
<EmbeddedResource Include="Assets\src\assets\img\android-chrome-192x192.png" />
<EmbeddedResource Include="Assets\src\assets\img\android-chrome-512x512.png" />
<EmbeddedResource Include="Assets\src\assets\img\apple-touch-icon.png" />
<EmbeddedResource Include="Assets\src\assets\img\favicon-16x16.png" />
<EmbeddedResource Include="Assets\src\assets\img\favicon-32x32.png" />
<EmbeddedResource Include="Assets\src\scss\bootstrap-variables.scss" />
<EmbeddedResource Include="Assets\src\scss\globals.scss" />
<EmbeddedResource Include="Assets\src\scss\variables.scss" />
<EmbeddedResource Include="Assets\webpack.config.js" />
</ItemGroup>
<ItemGroup>
<FrameworkReference Include="Microsoft.AspNetCore.App" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="OrchardCore.Theme.Targets" Version="1.5.0" />
<PackageReference Include="OrchardCore.ContentManagement" Version="1.5.0" />
<PackageReference Include="OrchardCore.DisplayManagement" Version="1.5.0" />
<PackageReference Include="OrchardCore.ResourceManagement" Version="1.5.0" />
</ItemGroup>
<ItemGroup>
<Folder Include="Assets\src\js\" />
<Folder Include="Styles\" />
<Folder Include="wwwroot\assets\img\" />
<Folder Include="wwwroot\css\" />
<Folder Include="wwwroot\js\" />
</ItemGroup>
</Project>

View File

@@ -0,0 +1,27 @@
<!DOCTYPE html>
<html lang="{{ Culture.Name }}">
<head>
<meta charset="utf-8">
<title>{% page_title Site.SiteName, position: "before", separator: " - " %}</title>
{% resources type: "Meta" %}
<!-- INSERT REQUIRED RESOURCES HERE -->
{% resources type: "HeadLink" %}
{% resources type: "Stylesheet" %}
{% resources type: "HeadScript" %}
</head>
<body dir="{{ Culture.Dir }}">
{% render_body %}
<footer>
{% render_section "Footer", required: false %}
</footer>
{% script name:"jquery", use_cdn:"true", at:"Foot" %}
{% resources type: "FootScript" %}
</body>
</html>

View File

@@ -0,0 +1,17 @@
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OrchardCore.Cms.MarkdownImport.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
return View();
}
}
}

View File

@@ -0,0 +1,10 @@
using OrchardCore.Modules.Manifest;
[assembly: Module(
Name = "OrchardCore.Cms.MarkdownImport",
Author = "Ben Ramey",
Website = "https://benramey.com",
Version = "0.0.1",
Description = "Provides mechanism to import markdown files.",
Category = "Content Management"
)]

View File

@@ -0,0 +1,21 @@
<Project Sdk="Microsoft.NET.Sdk.Razor">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<AddRazorSupportForMvc>true</AddRazorSupportForMvc>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup>
<ItemGroup>
<FrameworkReference Include="Microsoft.AspNetCore.App" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="OrchardCore.Module.Targets" Version="1.5.0" />
<PackageReference Include="OrchardCore.ContentManagement" Version="1.5.0" />
<PackageReference Include="OrchardCore.ContentTypes.Abstractions" Version="1.5.0" />
<PackageReference Include="OrchardCore.DisplayManagement" Version="1.5.0" />
</ItemGroup>
</Project>

View File

@@ -0,0 +1,22 @@
using Fluid;
using OrchardCore.Modules;
namespace OrchardCore.Cms.MarkdownImport
{
public class Startup : StartupBase
{
public override void ConfigureServices(IServiceCollection services)
{
}
public override void Configure(IApplicationBuilder builder, IEndpointRouteBuilder routes, IServiceProvider serviceProvider)
{
routes.MapAreaControllerRoute(
name: "Home",
areaName: "OrchardCore.Cms.MarkdownImport",
pattern: "Home/Index",
defaults: new { controller = "Home", action = "Index" }
);
}
}
}

View File

@@ -0,0 +1 @@
Template

View File

@@ -1,21 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<key id="9b532dfe-b3ef-443a-a7b6-28367bdb2d95" version="1">
<creationDate>2023-02-24T03:19:44.3578288Z</creationDate>
<activationDate>2023-02-24T03:19:44.3568818Z</activationDate>
<expirationDate>2023-05-25T03:19:44.3568818Z</expirationDate>
<descriptor deserializerType="Microsoft.AspNetCore.DataProtection.AuthenticatedEncryption.ConfigurationModel.AuthenticatedEncryptorDescriptorDeserializer, Microsoft.AspNetCore.DataProtection, Version=6.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60">
<descriptor>
<encryption algorithm="AES_256_CBC" />
<validation algorithm="HMACSHA256" />
<encryptedSecret decryptorType="Microsoft.AspNetCore.DataProtection.XmlEncryption.NullXmlDecryptor, Microsoft.AspNetCore.DataProtection, Version=6.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60" xmlns="http://schemas.asp.net/2015/03/dataProtection">
<unencryptedKey xmlns="">
<!-- This key is not encrypted. -->
<masterKey p6:requiresEncryption="true" xmlns:p6="http://schemas.asp.net/2015/03/dataProtection">
<!-- Warning: the key below is in an unencrypted form. -->
<value>AfKixLuEWNWoEMEFAt0f689XEe+iNOksRu4pc/ZQdmwClfqTyPxWrLLiHnMaNmCtde0InQt//d+JdJHiwJOhaA==</value>
</masterKey>
</unencryptedKey>
</encryptedSecret>
</descriptor>
</descriptor>
</key>

View File

@@ -1,5 +0,0 @@
{
"Default": {
"VersionId": "4yerepyys93vrv4crq3vzqmnm5"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 403 KiB