50 lines
1.7 KiB
TypeScript
50 lines
1.7 KiB
TypeScript
|
import { PageLayout } from "../comp/page_layout.ts";
|
||
|
import { AnyNode, E } from "ren/node.ts";
|
||
|
import { classNames } from "ren/attrs.ts";
|
||
|
import { Context } from "../../context.ts";
|
||
|
import { H3 } from "../uikit/typo.ts";
|
||
|
|
||
|
const p = E.bind(null, "p", []);
|
||
|
const ul = E.bind(null, "ul", []);
|
||
|
const li = E.bind(null, "li", []);
|
||
|
|
||
|
export function AboutPage(ctx: Context): AnyNode {
|
||
|
return PageLayout(ctx, [
|
||
|
E("div", classNames("content-width responsive-typography"), [
|
||
|
p(ctx.tr.about.Hi),
|
||
|
p(ctx.tr.about.My_name_is_Dmitriy_Pleshevskiy),
|
||
|
p(
|
||
|
ctx.tr.about
|
||
|
.I_am_lead_software_developer_architect_team_leader_and_mentor,
|
||
|
),
|
||
|
p(
|
||
|
ctx.tr.about
|
||
|
.Open_source_projects_are_my_passion_I_invent_experiment_implement_and_improve_projects_in_my_spare_time,
|
||
|
),
|
||
|
p(
|
||
|
ctx.tr.about
|
||
|
.Besides_programming_I_love_to_cook_and_spend_time_with_my_beloved_family,
|
||
|
),
|
||
|
|
||
|
H3(ctx.tr.about.Programming_languages),
|
||
|
p(`${ctx.tr.about.Prefer}: Rust, TS, Bash`),
|
||
|
p(`${ctx.tr.about.Extensive_experience}: Rust, TS, JS, Python, Bash`),
|
||
|
p(`${ctx.tr.about.Limited_experience}: Haskell, Java, C#, C++`),
|
||
|
|
||
|
H3(ctx.tr.about.Databases),
|
||
|
p(`${ctx.tr.about.Prefer}: Postgres`),
|
||
|
p(`${ctx.tr.about.Extensive_experience}: Postgres, MySQL, Sqlite, Mongo`),
|
||
|
|
||
|
H3(ctx.tr.about.Creating_applications),
|
||
|
ul([
|
||
|
li(`${ctx.tr.about.Traditional} (SSR + Forms)`),
|
||
|
li("API (REST/GraphQL/WebSocket/EventSource)"),
|
||
|
li(`${ctx.tr.about.Dynamic} (SPA)`),
|
||
|
li(`${ctx.tr.about.Hybrid} (SSR + SPA)`),
|
||
|
li(ctx.tr.about.Console),
|
||
|
li(ctx.tr.about.Crossplatform),
|
||
|
]),
|
||
|
]),
|
||
|
]);
|
||
|
}
|